本文共 11081 字,大约阅读时间需要 36 分钟。
!$ 调用上一个命令的参数作为此次命令的参数
用法:
ls /boot/grub/cd !$
实例:
* 通配符,用作匹配文件和目录用
ls *.txt
相对路径绝对路径
绝对路径带 /
相对路径不带 /
{} 创建多目录或者文件
mkdir a/a{1..5}
touch {1..5}.txt
> 写入符号
echo "123" > 1.txt
>> 追加写入符号
ehco "abc" >> 1.txt
| 管道符号 将上一个命令的结果输入到下一个命令的参数
head -200 1.txt | tail -101 查看1.txt 的100到200行内容
含义:
change directory 切换到指定目录
常用格式:
cd 进入家目录(只输入cd)
cd ~
cd -
cd ..
cd ../..
cd 目录
cd !$
含义----print work directory
显示当前目录
常用格式
pwd
root@test01-virtual-machine:/home/test01/桌面# pwd/home/test01/桌面
含义 ----list
显示目录下的文件及路径
选项
-a all 显示隐藏文件及目录
-l long 显示文件及目录属性
-d directory 指定目录
-R recursive 递归显示目录及子目录
常用格式
ls -a 显示所有文件和目录,包括隐藏文件
root@test01-virtual-machine:~# ls -a. 112.txt 1.sh 23.txt 2.doc 2.txt .bash_history .cache.. 1.doc 22.txt 2a.txt 2.sh abc.txt .bashrc .profile
ls -l 显示文件及目录的属性
root@test01-virtual-machine:~# ls -l总用量 0-rw-r--r-- 1 root root 0 7月 2 21:58 112.txt-rw-r--r-- 1 root root 0 7月 2 21:58 1.doc-rw-r--r-- 1 root root 0 7月 2 21:58 1.sh-rw-r--r-- 1 root root 0 7月 2 21:58 22.txt-rw-r--r-- 1 root root 0 7月 2 21:58 23.txt-rw-r--r-- 1 root root 0 7月 2 21:58 2a.txt-rw-r--r-- 1 root root 0 7月 2 21:58 2.doc-rw-r--r-- 1 root root 0 7月 2 21:58 2.sh-rw-r--r-- 1 root root 0 7月 2 21:58 2.txt-rw-r--r-- 1 root root 0 7月 2 21:58 abc.txt
ls -R 递归显示文件和目录及子目录
root@test01-virtual-machine:/home/test01/桌面# ls -R.:a./a:a1 a2./a/a1:./a/a2:a11 a12./a/a2/a11:./a/a2/a12:
ls -d 只显示指定目录
root@test01-virtual-machine:/home/test01/桌面# ls -d aa
ls -al 查看所有内容的属性包含隐藏的
root@test01-virtual-machine:~# ls -al总用量 24drwx------ 3 root root 4096 7月 2 21:58 .drwxr-xr-x 25 root root 4096 7月 2 22:17 ..-rw-r--r-- 1 root root 0 7月 2 21:58 112.txt-rw-r--r-- 1 root root 0 7月 2 21:58 1.doc-rw-r--r-- 1 root root 0 7月 2 21:58 1.sh-rw-r--r-- 1 root root 0 7月 2 21:58 22.txt-rw-r--r-- 1 root root 0 7月 2 21:58 23.txt-rw-r--r-- 1 root root 0 7月 2 21:58 2a.txt-rw-r--r-- 1 root root 0 7月 2 21:58 2.doc-rw-r--r-- 1 root root 0 7月 2 21:58 2.sh-rw-r--r-- 1 root root 0 7月 2 21:58 2.txt-rw-r--r-- 1 root root 0 7月 2 21:58 abc.txt-rw------- 1 root root 2095 7月 2 21:31 .bash_history-rw-r--r-- 1 root root 3106 10月 23 2015 .bashrcdrwx------ 2 root root 4096 10月 13 2016 .cache-rw-r--r-- 1 root root 148 8月 17 2015 .profile
ls -aR 递归查看所有文件及目录,包含隐藏
root@test01-virtual-machine:~# ls -aR.:. 112.txt 1.sh 23.txt 2.doc 2.txt .bash_history .cache.. 1.doc 22.txt 2a.txt 2.sh abc.txt .bashrc .profile./.cache:. ..
ls -lR 递归显示目录下所有文件和目录及子目录
root@test01-virtual-machine:/home/test01/桌面# ls -lR.:总用量 4drwxr-xr-x 4 root root 4096 7月 2 22:31 a./a:总用量 8drwxr-xr-x 2 root root 4096 7月 2 22:34 a1drwxr-xr-x 4 root root 4096 7月 2 22:31 a2./a/a1:总用量 0./a/a2:总用量 8drwxr-xr-x 2 root root 4096 7月 2 22:31 a11drwxr-xr-x 2 root root 4096 7月 2 22:31 a12./a/a2/a11:总用量 0./a/a2/a12:总用量 0
ls -alR 递归显示目录下所有文件及目录,含隐藏
root@test01-virtual-machine:~# ls -alR.:总用量 24drwx------ 3 root root 4096 7月 2 21:58 .drwxr-xr-x 25 root root 4096 7月 2 22:17 ..-rw-r--r-- 1 root root 0 7月 2 21:58 112.txt-rw-r--r-- 1 root root 0 7月 2 21:58 1.doc-rw-r--r-- 1 root root 0 7月 2 21:58 1.sh-rw-r--r-- 1 root root 0 7月 2 21:58 22.txt-rw-r--r-- 1 root root 0 7月 2 21:58 23.txt-rw-r--r-- 1 root root 0 7月 2 21:58 2a.txt-rw-r--r-- 1 root root 0 7月 2 21:58 2.doc-rw-r--r-- 1 root root 0 7月 2 21:58 2.sh-rw-r--r-- 1 root root 0 7月 2 21:58 2.txt-rw-r--r-- 1 root root 0 7月 2 21:58 abc.txt-rw------- 1 root root 2095 7月 2 21:31 .bash_history-rw-r--r-- 1 root root 3106 10月 23 2015 .bashrcdrwx------ 2 root root 4096 10月 13 2016 .cache-rw-r--r-- 1 root root 148 8月 17 2015 .profile./.cache:总用量 8drwx------ 2 root root 4096 10月 13 2016 .drwx------ 3 root root 4096 7月 2 21:58 ..
含义:
创建文件
root@test01-virtual-machine:~# touch 4.txtroot@test01-virtual-machine:~# ls 112.txt 1.doc 1.sh 22.txt 23.txt 2a.txt 2.doc 2.sh 2.txt 4.txt abc.txt
含义 make directory
创建目录
选项
-p parents 递归创建目录
-v verbose 显示创建过程
常用格式
mkdir -pv a/a1/a11
test01@test01-virtual-machine:~/桌面$ mkdir -pv a/a1/a11mkdir: 已创建目录 'a'mkdir: 已创建目录 'a/a1'mkdir: 已创建目录 'a/a1/a11'test01@test01-virtual-machine:~/桌面$ ls -R aa:a1a/a1:a11a/a1/a11:test01@test01-virtual-machine:~/桌面$
含义: remove directory
删除空目录
选项
-p 递归删除目录
-v 显示删除过程
常用格式
rmdir -pv a/a1/a11
test01@test01-virtual-machine:~/桌面$ ls -R aa:a1a/a1:a11a/a1/a11:test01@test01-virtual-machine:~/桌面$ rmdir -pv a/a1/a11rmdir: 正在删除目录 'a/a1/a11'rmdir: 正在删除目录 'a/a1'rmdir: 正在删除目录 'a'
含义 remove
删除文件或目录
选项
-i interactive 交互式删除,删除时有提示
-f force 强制删除,删除不提示
-r recursive 删除目录
-v verbose 显示删除过程
常用格式
rm a/{1.txt,2txt} 指定删除目录下的2个以上文件
test01@test01-virtual-machine:~/桌面$ ls a1.txt 2.txttest01@test01-virtual-machine:~/桌面$ rm a/{1.txt,2.txt}test01@test01-virtual-machine:~/桌面$ ls atest01@test01-virtual-machine:~/桌面$
rm -rf 强制文件和目录删除不提示
test01@test01-virtual-machine:~/桌面$ ls -R aa:a1a/a1:a11a/a1/a11:test01@test01-virtual-machine:~/桌面$ rm -rf a
rm -ir 交互式删除文件或目录
test01@test01-virtual-machine:~/桌面$ mkdir -p a/a1/a11test01@test01-virtual-machine:~/桌面$ touch a/a1/a11/1.txttest01@test01-virtual-machine:~/桌面$ rm -ir arm:是否进入目录'a'? yrm:是否进入目录'a/a1'? yrm:是否进入目录'a/a1/a11'? yrm:是否删除普通空文件 'a/a1/a11/1.txt'? yrm:是否删除目录 'a/a1/a11'? yrm:是否删除目录 'a/a1'? yrm:是否删除目录 'a'? ytest01@test01-virtual-machine:~/桌面$
rm -rv 删除目录并显示过程
test01@test01-virtual-machine:~/桌面$ mkdir -p a/a1/a11test01@test01-virtual-machine:~/桌面$ touch a/a1/a11/1.txttest01@test01-virtual-machine:~/桌面$ rm -rv a已删除'a/a1/a11/1.txt'removed directory 'a/a1/a11'removed directory 'a/a1'removed directory 'a'
含义 copy
复制文件或目录
选项
-i interactive 交互式复制
-f force 复制时强制覆盖
-r recursive 复制目录
-v verbose 显示复制过程
-a archive 复制时保留原文件属性
常用格式
cp 1.txt a 复制1.txt到文件a
test01@test01-virtual-machine:~/桌面$ cp 1.txt atest01@test01-virtual-machine:~/桌面$ ls1.txt 2.txt 3.txt atest01@test01-virtual-machine:~/桌面$ ls a1.txt
cp 1.txt a/2.txt 复制并更名
test01@test01-virtual-machine:~/桌面$ cp 1.txt a/2.txttest01@test01-virtual-machine:~/桌面$ ls 1.txt atest01@test01-virtual-machine:~/桌面$ ls a1.txt 2.txt
cp -r b a 复制目录
test01@test01-virtual-machine:~/桌面$ ls1.txt a btest01@test01-virtual-machine:~/桌面$ cp -r b atest01@test01-virtual-machine:~/桌面$ ls1.txt a btest01@test01-virtual-machine:~/桌面$ ls a1.txt 2.txt btest01@test01-virtual-machine:~/桌面$
cp -a 1.txt b 保留原文件属性
test01@test01-virtual-machine:~/桌面$ cp -a 1.txt atest01@test01-virtual-machine:~/桌面$ ls -l总用量 12-rw-r--r-- 1 test01 test01 25 7月 6 15:44 1.txtdrwxr-xr-x 3 test01 test01 4096 7月 6 16:15 adrwxr-xr-x 2 test01 test01 4096 7月 6 16:15 btest01@test01-virtual-machine:~/桌面$ ls -l a总用量 12-rw-r--r-- 1 test01 test01 25 7月 6 15:44 1.txt-rw-r--r-- 1 test01 test01 25 7月 6 16:13 2.txtdrwxr-xr-x 2 test01 test01 4096 7月 6 16:15 btest01@test01-virtual-machine:~/桌面$
cp -i 1.txt a 交互式复制覆盖
test01@test01-virtual-machine:~/桌面$ ls1.txt a btest01@test01-virtual-machine:~/桌面$ ls a1.txt 2.txt btest01@test01-virtual-machine:~/桌面$ cp -i 1.txt acp:是否覆盖'a/1.txt'? ytest01@test01-virtual-machine:~/桌面$
cp -f 1.txt a 复制时强制覆盖
test01@test01-virtual-machine:~/桌面$ ls1.txt a btest01@test01-virtual-machine:~/桌面$ ls a1.txt 2.txt btest01@test01-virtual-machine:~/桌面$ cp -f 1.txt atest01@test01-virtual-machine:~/桌面$
含义: move
移动或改名
选项
-i interactive 交互式
-f force 强制覆盖
常用格式
mv a b 目录操作
b目录存在时,将a目录移动到b目录下;b目录不存在时.将a目录改名为b
test01@test01-virtual-machine:~/桌面$ lsatest01@test01-virtual-machine:~/桌面$ mv a btest01@test01-virtual-machine:~/桌面$ lsbtest01@test01-virtual-machine:~/桌面$ mkdir atest01@test01-virtual-machine:~/桌面$ mv a btest01@test01-virtual-machine:~/桌面$ lsbtest01@test01-virtual-machine:~/桌面$ ls batest01@test01-virtual-machine:~/桌面$
mv 1.txt 2.txt 文件操作
将1.txt改名为2.txt,如果2.txt已经存在,则覆盖2.txt
test01@test01-virtual-machine:~/桌面$ ls1.txttest01@test01-virtual-machine:~/桌面$ mv 1.txt 2.txttest01@test01-virtual-machine:~/桌面$ ls2.txttest01@test01-virtual-machine:~/桌面$ touch 1.txttest01@test01-virtual-machine:~/桌面$ ls1.txt 2.txttest01@test01-virtual-machine:~/桌面$ mv 1.txt 2.txt test01@test01-virtual-machine:~/桌面$ ls2.txttest01@test01-virtual-machine:~/桌面$
mv 1.txt a 将1.txt 移动到目录a
test01@test01-virtual-machine:~/桌面$ mv 1.txt atest01@test01-virtual-machine:~/桌面$ lsatest01@test01-virtual-machine:~/桌面$ ls a1.txttest01@test01-virtual-machine:~/桌面$
mv -i 1.txt 2.txt 交互式改名并覆盖
test01@test01-virtual-machine:~/桌面$ mv -i 1.txt 2.txtmv:是否覆盖'2.txt'? ytest01@test01-virtual-machine:~/桌面$ ls2.txt a
mv -f 1.txt 2.txt 强制覆盖
test01@test01-virtual-machine:~/桌面$ ls2.txttest01@test01-virtual-machine:~/桌面$ touch 1.txttest01@test01-virtual-machine:~/桌面$ mv -f 1.txt 2.txttest01@test01-virtual-machine:~/桌面$ ls2.txt
mv a/* b 把a下面所有内容移动到b目录
test01@test01-virtual-machine:~/桌面$ ls -R .:a b./a:1.txt 2.txt 3.txt./b:test01@test01-virtual-machine:~/桌面$ mv a/* btest01@test01-virtual-machine:~/桌面$ ls a btest01@test01-virtual-machine:~/桌面$ test01@test01-virtual-machine:~/桌面$ ls -R.:a b./a:./b:1.txt 2.txt 3.txt
打印输入内容到屏幕
echo "123"
常用格式
echo "123" > 1.txt 在1.txt中写入123内容
含义
查看文件内容
参数:
-n --number 查看内容时显示行号,包括空行
-b --blank 查看内容时显示行号.不包括空行
常用格式
cat -b 1.txt
test01@test01-virtual-machine:~/桌面$ cat -b 1.txt 1 123 2 456 3 789 4 abc 5 def
cat -n 1.txt
test01@test01-virtual-machine:~/桌面$ cat -n 1.txt 1 123 2 456 3 789 4 5 abc 6 def
含义
查看文档时,计算文档行号
参数
-b a 计算行号时,包含空行
-b t 计算行号时,不包含空行
常用格式
nl -b a 1.txt
test01@test01-virtual-machine:~/桌面$ nl -ba 1.txt 1 123 2 456 3 789 4 5 abc 6 def
nl -bt 1.txt
test01@test01-virtual-machine:~/桌面$ nl -bt 1.txt 1 123 2 456 3 789 4 abc 5 def
含义
查看文档内容时支持翻页
选项
+数字
+/字符
-数字
常用格式
more +数字 从数字行号开始显示
test01@test01-virtual-machine:~/桌面$ nl -ba 1.txt 1 123 2 456 3 789 4 5 abc 6 deftest01@test01-virtual-machine:~/桌面$ more +3 1.txt 789abcdef
more +/字符 从第一个匹配"字符"的行的前2行开始显示
test01@test01-virtual-machine:~/桌面$ more +/bc 1.txt ...跳过789abcdef
more -数字 空格翻页时,一次翻"数字"行数
test01@test01-virtual-machine:~/桌面$ nl -ba /etc/passwd | more -5 1 root:x:0:0:root:/root:/bin/bash 2 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin 3 bin:x:2:2:bin:/bin:/usr/sbin/nologin 4 sys:x:3:3:sys:/dev:/usr/sbin/nologin 5 sync:x:4:65534:sync:/bin:/bin/sync--更多--
含义
查看文件内容
选项
-数字
常用格式
less -5 文件
test01@test01-virtual-machine:~/桌面$ less -5 /etc/passwd
含义
从头开始显示文件内容,默认显示10行
选项
-n 数字 或 -数字
-c 数字
常用格式
head -5 /etc/passwd 显示前10行内容
test01@test01-virtual-machine:~/桌面$ head -5 /etc/passwdroot:x:0:0:root:/root:/bin/bashdaemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologinbin:x:2:2:bin:/bin:/usr/sbin/nologinsys:x:3:3:sys:/dev:/usr/sbin/nologinsync:x:4:65534:sync:/bin:/bin/sync
head -c 5 /etc/passwd 显示前5个字节的内容
test01@test01-virtual-machine:~/桌面$ head -c 5 /etc/passwdroot:
含义
从结尾处查看文件内容
选项
-n 数字 或 -数字 查看最后"数字"行内容
-c 数字 查看最后"数字"字节数的内容 注意每行结束符也占用一个字符
常用格式
tail -2
test01@test01-virtual-machine:~/桌面$ tail -2 1.txt 123456
tail -c 3 1.txt
test01@test01-virtual-machine:~/桌面$ tail -c 3 1.txt 56
转载地址:http://iblgi.baihongyu.com/