文章目录
Linux 命令大全
cd
cd /tmp 切换到tmp目录下
cd 进入用户主目录;
cd ~ 进入用户主目录;
cd - 返回进入此目录之前所在的目录;
cd … 返回上级目录;
cd …/… 返回上两级目录;
cd !$ 把上个命令的参数作为cd参数使用。
Ubuntu系统文件目录

opt(常用)
这个是给第三方协力软件放置的目录 。 什么是第三方协力软件啊?举例来说,KDE这个桌面管理系统是一个独立的计画,不过他可以安装到Linux系统中,因此KDE的软件就建议放置到此目录下了。 另外,如果妳想要自行安装额外的软件(非原本的distribution提供的),那么也能够将你的软件安装到这里来。 不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录下。
/opt/ 作为可选文件和程序的存放目录,否则将无法引导计算机进入操作系统。
etc(常用)
只有root有权力修改。
/etc目录存放着各种系统配置文件,其中包括了用户信息文件/etc/ passwd,系统初始化文件/etc/rc等。linux正是*这些文件才得以正常地运行。
home (常用)
这是系统预设的使用者家目录(home directory)。 在你新增一个一般使用者帐号时,预设的使用者家目录都会规范到这里来。比较重要的是,家目录有两种代号:~ :代表当前使用者的家目录,而 ~guest:则代表用户名为guest的家目录。
usr(常用)
用于存放系统应用程序,比较重要的目录 /usr/local 本地管理员软件安装目录
var(常用)
用于存放运行时需要改变数据的文件,比较常用的是/var/log存放各种默认软件的日志信息
lib
/lib目录是根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文件。这些文件包含了可被许多程序共享的代码,以避免每个程序都包含有相同的子程序的副本,故可以使得可执行文件变得更小,节省空间。
bin
系统有很多放置执行档的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般帐号所使用,主要有:cat,chmod(修改权限), chown, date, mv, mkdir, cp, bash等等常用的指令。
/bin目录包含了引导启动所需的命令或普通用户可能用的命令(可能在引导启动后)。这些命令都是二进制文件的可执行程序(bin是binary—-二进制的简称),多是系统中重要的系统文件。
boot
主要放置开机会使用到的档案,包括Linux核心档案以及开机选单与开机所需设定档等等。Linux kernel常用的档名为:vmlinuz ,如果使用的是grub这个开机管理程式,则还会存在/boot/grub/这个目录。
/boot目录存放引导加载器(bootstrap loader)使用的文件,如l i l o,核心映像也经常放在这里,而不是放在根目录中。但是如果有许多核心映像,这个目录就可能变得很大,这时使用单独的文件系统会更好一些。还有一点要注意的是,要确保核心映像必须在ide硬盘的前1024柱面内。
dev
在Linux系统上,任何装置与周边设备都是以档案的型态存在于这个目录当中。 只要通过存取这个目录下的某个档案,就等于存取某个装置。比要重要的档案有/dev/null, /dev/zero, /dev/tty , /dev/lp, / dev/hd, /dev/sd*等等
/dev目录存放了设备文件,即设备驱动程序,用户通过这些文件访问外部设备。比如,用户可以通过访问/dev/mouse来访问鼠标的输入,就像访问其他文件一样。
media
media是媒体的英文,这个/media底下放置的就是可移除的装置。 包括软碟、光碟、DVD等等装置都暂时挂载于此。
mnt
如果妳想要暂时挂载某些额外的装置,一般建议妳可以放置到这个目录中。在古早时候,这个目录的用途与/media相同了。 只是有了/media之后,这个目录就用来暂时挂载用了。
/mnt目录是系统管理员临时安装(mount)文件系统的安装点。程序并不自动支持安装到/mnt 。/mnt 下面可以分为许多子目录,例如/mnt/dosa 可能是使用msdos文件系统的软驱,而/mnt/exta 可能是使用ext2文件系统的软驱,/mnt/cdrom 光驱等等。
root
系统管理员(root)的家目录。 之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分区中
sbin
Linux 有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来设定系统,其他使用者最多只能用来查询而已。放在/sbin底下的
/sbin目录类似/bin,也用于存储二进制文件。因为其中的大部分文件多是系统管理员使用的基本的系统程序,所以虽然普通用户必要且允许时可以使用,但一般不给普通用户使用。
tmp
这是让一般使用者或者是正在执行的程序暂时放置档案的地方。这个目录是任何人都能够存取的,所以你需要定期的清理一下。当然,重要资料不可放置在此目录啊。 因为FHS甚至建议在开机时,应该要将/tmp下的资料都删除
/tmp 目录存放程序在运行时产生的信息和数据。但在引导启动后,运行的程序最好使用/var/tmp来代替/tmp ,因为前者可能拥有一个更大的磁盘空间。
Linux 环境变量(export命令)
https://www.cnblogs.com/tinywan/p/7224011.html?utm_source=itdadao&utm_medium=referral
1、直接用export命令:
#export PATH=$PATH:/opt/au1200_rm/build_tools/bin
查看是否已经设好,可用命令export查看:
2、修改profile文件:
#vi /etc/profile
在里面加入:
export PATH=“KaTeX parse error: Expected 'EOF', got '#' at position 74: …. 修改.bashrc文件: #̲vi /root/.bashr…PATH:/opt/au1200_rm/build_tools/bin”
使生效:source .bashrc
通过echo命令测试一下:
#echo $PATH
快捷键
ctrl + l - 清屏 。 cLear
ctrl + c - 终止命令。
ctrl + d - 退出 shell,好像也可以表示EOF。
ctrl + z - 将当前进程置于后台,fg还原。
ctrl + r - 从命令历史中找 。 Reverse-i-search
ctrl + a - 光标移到行首 。 A
ctrl + e - 光标移到行尾。 End
ctrl + u - 清除光标到行首的字符 。U
ctrl + w - 清除光标之前一个单词 。Word
ctrl + k - 清除光标到行尾的字符。K
ctrl + t - 交换光标前两个字符。swiTch
ctrl + y - 粘贴前一ctrl+u类命令删除的字符。Y
ctrl + p - 上一条命令。Prev
ctrl + n - 下一条命令。Next
ctrl + v - 输入控制字符 如ctrl+v ,会输入^M
ctrl + f - 光标后移一个字符。Fore
ctrl + b - 光标前移一个字符。Back
ctrl + h - 删除光标前一个字符。H
ctrl + s - 挂起当前shell。Stop
ctrl + q - 重新启用
Linux常用命令
https://www.runoob.com/w3cnote/linux-common-command.html
shutdown关机重启
关机
shutdown -h now 立刻关机
shutdown -h 5 5分钟后关机
poweroff 立刻关机
重启
shutdown -r now 立刻重启
shutdown -r 5 5分钟后重启
reboot 立刻重启
VIM 教程
https://www.runoob.com/linux/linux-vim.html
https://blog.csdn.net/jerwey/article/details/124710153
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
xxd命令
https://blog.csdn.net/houxiaoni01/article/details/109389430
管道符号|
| 是管道符号, 可以连接两个命令, 将前一个命令的输出作为后一个命令的输入。
eg:
ls | grep passwd 显示当前目录下所有passwd文件
ls | grep ^p[abcd] 显示”以 p 开头的,第 2 个字母是 a 或 b 或 c 或 d”的所有文件
which
Linux which命令用于查找文件。
which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
语法
which [文件…]
参数:
-n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。
-w 指定输出时栏位的宽度。
-V 显示版本信息。
实例
grep
grep
1.作用
grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
它能使用正则表达式搜索文本,并把匹配的行打印出来。
2.格式
grep [options]
3. 主要参数: grep --help可查看
-c:只输出匹配行的计数。
-i:不区分大小写。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
–color=auto :可以将找到的关键词部分加上颜色的显示。
find
1.作用
find命令的作用是在目录中搜索文件,它的使用权限是所有用户。
2.格式
find [path][options][expression]
https://blog.csdn.net/annita2019/article/details/121789011
gcc和g++区别
http://c.biancheng.net/view/7936.html
习惯使用 gcc 指令编译 C 语言程序,用 g++ 指令编译 C++ 代码。需要强调的一点是,这并不是 gcc 和 g++ 的区别,gcc 指令也可以用来编译 C++ 程序,同样 g++ 指令也可以用于编译 C 语言程序。
dpkg 命令
dpkg 是Debian Package的简写,是为Debian 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自Debian的Linux发行版都使用dpkg,例如Ubuntu、Knoppix 等。
- 列出已安装的deb包
dpkg -l - 移除已安装的deb包
dpkg -r - 安装deb包
dpkg -i
su
su = Switch User
su用于用户之间的切换。但是切换前的用户依然保持登录状态。除 root 外,需要键入该使用者的密码。
su test:切换到test用户,但是路径还是/root目录
su - test : 切换到test用户,路径变成了/home/test
su : 切换到root用户,但是路径还是原来的路径
su - : 切换到root用户,并且路径是/root
su不足:如果某个用户需要使用root权限、则必须要把root密码告诉此用户。
切换用户
hnlinux@runoob.com:~$ whoami //显示当前用户
hnlinux
hnlinux@runoob.com:~$ pwd //显示当前目录
/home/hnlinux
hnlinux@runoob.com:~$ su root //切换到root用户
密码:
root@runoob.com:/home/hnlinux# whoami
root
root@runoob.com:/home/hnlinux# pwd
/home/hnlinux
切换用户、改变环境变量
hnlinux@runoob.com:~$ su - root //切换到root用户
密码:
root@runoob.com:/home/hnlinux# whoami
root
root@runoob.com:/home/hnlinux# pwd //显示当前目录
/root
退出返回之前的用户:exit
语法
su [-fmp] [-c command] [-s shell] [–help] [–version] [-] [USER [ARG]]
sudo
sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性。sudo不是对shell的一个代替,它是面向每个命令的。
经由 sudo 所执行的指令就好像是 root 亲自执行。
使用权限:在 /etc/sudoers 中有出现的使用者。
cat
cat命令是linux下的一个文本输出命令,cat 的全称 concatenate files and print on the standard output。
cat命令主要用来查看文件内容,创建文件,文件合并,追加文件内容等功能。
cat主要有三大功能:
1.一次显示整个文件。
$ cat filename
2.从键盘创建一个文件。
$ cat > filename
只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。
$cat file1 file2 > file
把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里:cat -n textfile1 > textfile2
文件/proc/partitions 可以查看分区信息。
$cat /proc/partitions
挂载mount umount
https://www.cnblogs.com/xiumuzidiao/p/10739171.html
- 以root用户登陆
- 查看当前挂载: fdisk -l
- 新建一个目录来挂载硬盘 挂载到MNT/usb
:~ # cd /mnt
:/mnt# mkdir /mnt/usb - 挂载命令
root@h-Default-string:/mnt# mount /dev/sdb1 /mnt/usb - 不出问题就会挂载成功。
- 卸载u盘:umount /mnt/usb
遇到有进程占用硬盘
- 查看进程: fuser -m -u /dev/sdb1
/dev/sdb1: 1977(root)
2)结束进程# kill 1977
3)重新挂载一次
fuser
可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息.
fuser显示使用指定文件或者文件系统的进程ID.默认情况下每个文件名后面跟一个字母表示访问类型。
常用选项
-a 显示所有命令行中指定的文件,默认情况下被访问的文件才会被显示。
-c 和-m一样,用于POSIX兼容。
-k 杀掉访问文件的进程。如果没有指定-signal就会发送SIGKILL信号。结合 –signal
-signal 使用指定的信号,而不是用SIGKILL来杀掉进程。可以通过名称或者号码来表示信号(例如-HUP,-1),这个选项要和-k一起使用,否则会被忽略。
-l 列出所有已知的信号名称。
-i 杀掉进程之前询问用户,如果没有-k这个选项会被忽略。
-m name 指定一个挂载文件系统上的文件或者被挂载的块设备(名称name)。这样所有访问这个文件或者文件系统的进程都会被列出来。如果指定的是一个目录会自动转换成"name/",并使用所有挂载在那个目录下面的文件系统。
-n space 指定一个不同的命名空间(space).这里支持不同的空间文件(文件名,此处默认)、tcp(本地tcp端口)、udp(本地udp端口)。对于端口,可以指定端口号或者名称,如果不会引起歧义那么可以使用简单表示的形式,例如:name/space (即形如:80/tcp之类的表示)。
-s 静默模式,这时候-u,-v会被忽略。-a不能和-s一起使用。
-u 在每个PID后面添加进程拥有者的用户名称。
-v 详细模式。输出似ps命令的输出,包含PID,USER,COMMAND等许多域,如果是内核访问的那么PID为kernel.
假设无法卸载的设备为/dev/sdb1
1)运行下面命令看一下哪个用户哪个进程占用着此设备
fuser -m -v /dev/sdb1
2)运行下面命令杀掉占用此设备的进程
fuser -m -v -k /dev/sdb1
或者fuser -m -v -k -i /dev/sdb1(每杀掉一下进程会让你确认)
3)再umount
pwd 命令
pwd 命令用于查看当前工作目录路径。pwd = Print work diretory
touch
Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
ls -l 可以显示档案的时间记录
touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]
- 如何创建一个空白文件
要使用touch命令创建一个简单的空白文件,请使用以下语法。 如果您选择的文件名已经存在,则只需更改访问时间
$ touch linuxidc.txt
- 如何创建多个文件
如果您想使用touch命令创建多个文件,只需输入带空格的扩展名的文件名即可。 你可以检查下面的语法。
$ touch linuxidc_com.txt linuxmu.txt linuxidc_net.txt
- 如何用一个命令创建批量文件
如果您想要创建批量文件,例如20或30个文件,而不是扩展名。 下面的例子肯定会帮助你。 您可以使用命令ls或ll来检查文件是否被创建。由于我使用的是图形界面的,直接打开文件夹看看更直观吧。
- 1.创建名称为A到Z的文件
$ touch {A…Z} - 2.创建从1到100的文件
$ touch {1…100} - 3.创建带有扩展名的批量文件
$ touch {2…200}.txt - 4.创建具有扩展名的10000个文件
$ touch {1…10}{1…1000}.txt
- 如何避免创建新文件
ubuntu-通配符
ubuntu下的通配符主要有三个
1.* 这个是匹配任意一个或多个字符
2.?这个是匹配一个任意字符
3. []这个是匹配中括号里面的内容
ldd
ldd本身不是一个程序,而仅是一个shell脚本:ldd可以列出一个程序所需要得动态链接库(so)
tmux
Tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。
#Ubuntu 或 Debian安装
$ sudo apt-get install tmux
启动tmux:$ tmux
退出 :$ exit 或 Ctrl+D //相当关闭这个会话
查看会话:$ tmux ls
新建会话:$ tmux new -s < session-name>
分离会话:Ctrl+b d 或者输入 tmux detach (退出当前 Tmux 窗口,但是会话和里面的进程仍然在后台运行)
接入会话:$ tmux attach -t
杀死会话:$ tmux kill-session -t 编号/名称
切换会话:$ tmux switch -t 编号/名称
重命名会话:$ tmux rename-session -t 0
快捷键
Ctrl+b d:分离当前会话。
Ctrl+b s:列出所有会话。
Ctrl+b $:重命名当前会话。
前缀键
Tmux 窗口有大量的快捷键。所有快捷键都要通过前缀键唤起。默认的前缀键是Ctrl+b,即先按下Ctrl+b,快捷键才会生效。
举例来说,帮助命令的快捷键是Ctrl+b ?。它的用法是,在 Tmux 窗口中,先按下Ctrl+b,再按下?,就会显示帮助信息。
然后,按下 ESC 键或q键,就可以退出帮助。
http://www.ruanyifeng.com/blog/2019/10/tmux.html
文件/文件夹操作
cd 命令:
“.” ”点”表示当前目录
以”/” 开始的目录路径 表示绝对路径
相对路径: 是相对于当前目录,如 “.”, “. .” 都是相对路径
以”.” 为开头的文件/目录是隐藏的 如”.demo”、 “.bash_profile”
命令 | |
---|---|
cd / | 切换到根目录 |
cd /usr | 切换到根目录下的usr目录 |
cd . . / | 切换到上一级目录 或者 cd . . |
cd ~ | 切换到home目录 |
cd - 切换到上次访问的目录 |
ls [-al] & ll
命令 | |
---|---|
ls | 查看当前目录下的所有目录和文件(ls:仅罗列出当前文件名或目录名) |
ls -a 或la: | 查看当前目录下的所有目录和文件(包括隐藏的文件) |
ls -l 或 ll | 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息) |
ls /dir | 查看指定目录下的所有目录和文件 如:ls /usr |
mkdir 创建目录
命令 | |
---|---|
mkdir | Make directory 建立目录 |
rmdir | Remove directory 移动目录 |
mkdir -p | 递归创建目录,即使上级目录不存在,会按目录层级自动创建目录 |
mkdir /a/b | 在指定目录a下创建一个名为b的目录 |
删除目录或文件:rm [-rf] 目录
删除文件:
rm 文件 删除当前目录下的文件
rm -f 文件 删除当前目录的的文件(不询问)
删除目录:
rm -r aaa 递归删除当前目录下的aaa目录
rm -rf aaa 递归删除当前目录下的aaa目录(不询问)
全部删除:
rm -rf * 将当前目录下的所有目录和文件全部删除
rm -rf /* 【自杀命令!慎用!慎用!慎用!】将根目录下的所有文件全部删除
注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包
mv
mv参数设置与运行结果
命令格式 运行结果
mv 文件名 文件名 将源文件名改为目标文件名
mv 文件名 目录名 将文件移动到目标目录
mv 目录名 目录名 目标目录已存在,将源目录移动到目标目录;目标目录不存在则改名
将文件 aaa 更名为 bbb :
mv aaa bbb
将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs。
mv info/ logs
再如将/usr/student下的所有文件和目录移到当前目录下,命令行为:
$ mv /usr/student/* .
cp
拷贝目录
命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归
示例:将/usr/tmp目录下的aaa目录复制到 /usr目录下面 cp /usr/tmp/aaa /usr
参数说明:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
实例
使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:
$ cp –r test/ newtest
注意:用户使用该指令复制目录时,必须使用参数 -r 或者 -R 。
find
搜索目录【查】find
命令:find 目录 参数 文件名称
示例:find /usr/tmp -name ‘a*’ 查找/usr/tmp目录下的所有以a开头的目录或文件
新建文件
touch 文件
修改文件
vi 文件
注意:使用vi编辑器打开文件后,并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式。
使用vi编辑器打开文件后点击按键:i ,a或者o即可进入编辑模式。
编辑文件
i:在光标所在字符前开始插入
a:在光标所在字符后开始插入
o:在光标所在行的下面另起一新行插入
保存或者取消编辑
保存文件:
第一步:ESC 进入命令行模式
第二步:: 进入底行模式
第三步:wq 保存并退出编辑
取消编辑:
第一步:ESC 进入命令行模式
第二步:: 进入底行模式
第三步:q! 撤销本次修改并退出编辑
文件的查看命令:cat/more/less/tail
权限修改
[root@www /]# ls -l
total 64
dr-xr-xr-x 2 root root 4096 Dec 14 2012 bin
在Linux中第一个字符代表这个文件是目录、文件或链接文件等等。
- 当为[ d ]则是目录;
- 当为[ - ]则是文件;
- 若是[ l ]则表示为链接文档(link file);
- 若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
- 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
接下来的字符中,以三个为一组,且均为『rwx』 的三个参数的组合。其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号[ - ]而已。
每个文件的属性由左边第一部分的10个字符来确定
从左至右用0-9这些数字来表示。
第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。
第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。
其中,第1、4、7位表示读权限,如果用"r"字符表示,则有读权限,如果用"-"字符表示,则没有读权限;
第2、5、8位表示写权限,如果用"w"字符表示,则有写权限,如果用"-“字符表示没有写权限;第3、6、9位表示可执行权限,如果用"x"字符表示,则有执行权限,如果用”-"字符表示,则没有执行权限。
https://www.runoob.com/linux/linux-file-attr-permission.html
chgrp:更改文件属组
语法:
chgrp [-R] 属组名 文件名
参数选项
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。chown 更改文件属主,也可以同时更改文件属组
语法:
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名chmod:更改文件9个属性
chmod [-R] xyz 文件或目录
选项与参数:
xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。比如 777
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更
比如 chmod 777 文件名
find
Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
语法
find path -option [ -print ] [ -exec -ok command ] {} ;
实例
将目前目录及其子目录下所有延伸档名是 c 的文件列出来。
find . -name “*.c”
Source
Ubuntu source命令的作用就是将设置在文件中的配置信息马上生效,而不需要经过重启。本文就给大家带来Ubuntu使用source命令执行文件的教程。
source命令,也称为“点命令”,也就是一个点符号(.)。它通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
同时,可以把一些命令做成一个文件,让它自动顺序执行,它可以把这个文件的内容当成shell来执行。
压缩与解压
Linux 常用的压缩与解压缩命令有:tar、gzip、gunzip、bzip2、bunzip2、compress 、uncompress、 zip、 unzip、rar、unrar 等。
ZIP是一个文件压缩的算法。
ZIP是一种相当简单的分别压缩每个文件的存档格式,他的重要作用是压缩。分别压缩文件允许不必读取另外的数据而检索独立的文件;理论上,这种格式允许对不同的文件使用不同的算法。
tar可以将多个文件合并为一个文件,打包后的文件后缀亦为“tar”。
tar命令是Unix/Linux系统中重要用途是备份文件,tar代表未压缩的tar文件。已压缩的tar文件则附加压缩文件的扩展名,如经过gzip压缩后的tar文件,扩展名为“.tar.gz”
zip unzip
https://www.runoob.com/linux/linux-comm-zip.html
Linux zip 命令用于压缩文件。
安装解压软件
sudo apt-get install unzip
解压文件
unzip xxxxx.zip
将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:
zip -q -r html.zip /home/html
如果在我们在 /home/html 目录下,可以执行以下命令:
zip -q -r html.zip *
从压缩文件 cp.zip 中删除文件 a.c
zip -dv cp.zip a.c
-r 递归处理,将指定目录下的所有文件和子目录一并处理。
-d 从压缩文件内删除指定的文件。
-q 不显示指令执行过程
tar
Linux tar命令用于备份文件。
tar是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。
最常用的打包命令是 tar,使用 tar 程序打出来的包我们常称为 tar 包,tar 包文件的命令通常都是以 .tar 结尾的。生成 tar 包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲 tar 命令的基本用法。
https://www.runoob.com/w3cnote/linux-tar-gz.html
tar –xvf file.tar // 解压 tar 包
tar -xzvf file.tar.gz // 解压 tar.gz
tar -xjvf file.tar.bz2 // 解压 tar.bz2
tar –xZvf file.tar.Z // 解压 tar.Z
unrar e file.rar // 解压 rar
unzip file.zip // 解压 zip
解压命令tar zxvf中zxvf分别是什么意思
x : 从 tar 包中把文件提取出来
z : 表示 tar 包是被 gzip 压缩过的,所以解压时需要用 gunzip 解压
v : 显示详细信息
f xxx.tar.gz : 指定被处理的文件是 xxx.tar.gz
rar unrar
unrar解压
解压:unrar x test.rar 保留完整目录结构
解压:unrar e test.rar temp/ 文件全部解压到当前目录。# temp/ 表示解压的路径
du 查看文件及文件夹的大小
du 的英文原义为 disk usage,含义为显示磁盘空间的使用情况,用于查看当前目录的总大小。
如果当前目录下文件和文件夹很多,使用不带参数du的命令,可以循环列出所有文件和文件夹所使用的空间。这对查看究竟是那个地方过大是不利的,所以得指定深入目录的层数,参数:–max-depth=,这是个极为有用的参数!
-c或–total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或–dereference-args 显示指定符号连接的源文件大小。
-h或–human-readable 以K,M,G为单位,提高信息的可读性
-s:显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小
-s:对每个Names参数只给出占用的数据块总数。
-a:递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。
-b:以字节为单位列出磁盘空间使用情况(系统默认以k字节为单位)。
-k:以1024字节为单位列出磁盘空间使用情况。
-c:最后再加上一个总计(系统默认设置)。
-l:计算所有的文件大小,对硬链接文件,则计算多次。
-x:跳过在不同文件系统上的目录不予统计。
//查看系统中文件的使用情况
df -h
//查看当前目录下各个文件及目录占用空间大小
du -sh *
- df命令:
查看一级文件大小、使用比例、档案系统以及挂入点
1.1 查看分区的文件系统: df -T
1.2 显示目前所有文件系统的可用空间及使用情形: df -h
- du命令:
可以查看文件及文件夹的大小
2.1 查看系统中文件的使用情况: du -h
2.2. 查看当前目录下各个文件及目录占用空间大小:du -sh (把换掉,查具体的文件)
dtc
DTC编译器:设备树源码DTS文件编译为二进制文件DTB。
DTC编译器的作用:就是对设备树的源码的文件进行语法检查,根据linux的内核要求检查各个节点以及属性,将设备树源码编译生成二进制文件,以保证内核能启动。
DTC编译器源文件所在位置:/scripts/dtc/***
内核使能了设备树。编译内核的时候DTC工具会自动被编译出来,对应于
scripts/dtc/Makefile 中 hostprogs-y := dtc
也可以单独安装DTC
sudo apt-get install device-tree-compiler
(1) dts编译生成dtb
dtc -I dts -O dtb -o 二进制.dtb 源文件.dts
把.dts编译生成.dtb
(2) dtb编译生成dts
dtc -I dtb -O dts -o 源文件.dts 二进制.dtb
把.dtb反编译生成为.dts
ip地址
ifconfig eth0 192.168.1.10 netmask255.255.255.0