目录
所有命令大小写敏感,格式如下:
命令 [-选项] [参数]
其中,选项和参数可选,中间用空格隔开
命令如下:
-清屏
clear
-打印当前目录
pwd
-改变当前目录
cd 指定要切换到的目录路径
-显示目录内容
ls
ls -a,显示全部内容,包括隐藏文件(以.开头文件和目录)
ls -l 和ls -lh的区别,-l大小显示字节,-lh显示K和M
ls -l,显示详细信息,包括文件属性
---------------
- rwx rwx rwx 1 root root 6 jul 25 11:48 myfile
A B C D E F G H I J
A:文件类型,d 目录、- 普通、I 软连接
B:属主权限:r 读 w写 x执行 -无
C:同组权限
D:其他权限
E:硬链接数,文件的别名
F:属主名称
G:同组名称
H:字节数
I:最后的修改时间
J:文件名
针对目录:写权限:在该目录下增删子目录或文件
执行权限:访问该目录下的内容
-修改文件权限:
chmod
符号模式:
chmod u/g/o/a +/-/= r/w/x文件
u/g/o/a: 属主、同组、其他、所有
+/-/=: 增加、减去、设置
例如:chmod a+rwx file
数字模式:
chmod 421 myfile
数字从左到右依次对应属主,同组,其他
每一位数字都是从 4/ 2 /1三个数中选出若干取和
读/写/执
-创建空文件
touch
touch home/lxb/hello.txt 运用绝对路径在lxb目录下创建hello.txt文件
-创建空目录
mkdir
创建多级目录:
mkdir -p hello 3/4/5
-拷贝
cp
拷贝文件: cp 源文件 目标文件
原名拷贝文件: cp 源文件 存在目录
拷贝目录: cp -fr 源目录 目标目录
原名拷贝目录: cp -fr 源目录 存在目录
-更名,移动 (剪切)
mv
更名文件:mv 源文件 目标文件
移动文件:mv 源文件 存在根目录
更名目录:mv 源目录 目标目录
移动目录:mv 源目录 存在目录
-删除文件
rm
删除文件:rm 文件
删除目录:rm -fr 目录
-向显示器输出信息
echo
信息保存文件中,如果文件原本有信息则清空:echo > 文件
信息放入文件尾部,不会清空信息:echo >> 文件
-创建链接
ln
1.硬链接(取别名)
ln 目标文件 链接文件
a、b 互为别名,ab指向同一文件,修改a则b也同样变化
2.软链接(快捷方式)
ln -s 目标文件 链接文件
a指向文件,b指向a,b是a的快捷方式,
-切换终端
ctrl+shift+t 可以在一个终端中创建另外一个子终端,切换按 alt + 数字(终端编号)切换
-显示文件内容:
cat 文件 显示文件内容
more 文件 分屏显示文件内容
head -n 文件 显示文件前n行内容
tail -n 文件 显示文件后n行内容
tail -f 文件 随文件增长,显示其追加内容
-查找文件或目录
find 目录 条件
查找特定目录下,满足特定条件的文件或目录。
find -user A -group B -name C
找一个属主为A 同组为B 文件名为C的文件
find -perm 664 -size 100c -perm -size -nc
找一个权限为664,大小为100字节的文件
-查找内容:在某个文件中找到某句话在哪一行
grep 选项 正则表达式 文件/目录 n显示行号
grep -Rn "1234" hello.txt
在当前目录的hello.txt文件中搜索”1234“ ,包括组合,例如 1234abcd
grep - Rnw "1234" hello.txt
在当前目录的hello.txt文件中搜索”1234“,不包括组合,只有1234单成一个词汇是被搜索
grep -Rn "1234" /user/include 到/user/include目录下查找
grrp -Rn "1234" *.c到所有以.c结尾的文件中找”1234“
-打包解包
tar
打包:
A文件打包成A.tar.bz2:
tar -jcvf A.tar.bz2 A
A文件打包成A.tar.gz:
tar -zcvf A.tar.gz A
-解包
tar -xvf A.tar.bz2
tar -vxf A.tar.gz
-文件通配符 通配若干任意字符
*
ls *.txt
?
ls file_?.txt
?可以为任意单个字符,如果是两个则是??
[]
在一个特定范围内通配字符
ls file_[a-c].txt
-I/O重定向和管道
>
输出重定向
echo hello 向显示屏输出hello
echo hello > a.txt 重定向为a.txt
输入重定向
cat :自键盘上输入,按ctrl+c退出
cat < a.txt :从文件a.txt中输入数据
cat < a.txt > b.txt: 从a.txt中获取数据,放入b.txt中
>>追加
echo world >> b.txt
-| 管道
将前一个命令的输出作为后一个命令的输入
ls -l / etc | more
-命令分隔符与续行符
; 命令分隔符,在一个命令行中分隔多个命令
cal; pwd; date
-\ 续航符,继续在下一行输入命令
cat\
/etc/passwd\
|\
grep\
lxb
等价于:cat /etc/passwd | grep lxb