目录与文件
更改工作目录:cd
- cd .. 转到当前目录的上层目录
- cd ~ 转到当前用户的家目录
- cd ../../ 转到当前目录的上上层目录
- pwd 显示当前工作目录
目录与文件查看: ls
- -l 以长格式形式显示
- -a 显示所有文件或目录,包括隐藏文件
- -i 显示文件索引信息,也就是文件的inode号
- -d 列出目录
创建工作目录: mkdir
- -m 指定所有用户对新建目录的权限
- -p 可以强制创建多层目录
创建空文件: touch
创建文件并写入内容: cat
cat > file
输入内容 ctrl+c
cat file
查看是否创建成功
向文件中写入内容: echo hello world > file
复制文件或目录: cp
-r 递归复制
复制文件file1到/tmp中并重命名尾file2
cp file1 /tmp/file2
复制/root/file1到/tmp中并重命名为file2
cp /root/file1 /tmp/file2
复制当前目录下以.bak结尾的文件到/tmp中
cp*.bak /tmp
更改文件或目录名称: mv
将/tmp目录下的pic重命名为pic2
mv /tmp/pic /tmp/pic2
目录与文件移动: mv
将pic目录下的所有以png结尾的文件移动到/usr/local/share/pic下
mv /tmp/pic/*.png /usr/local/share/pic
删除文件或目录: rm
-r 递归删除,可以删除目录下的文件或目录
-f 删除文件时不提醒而强制删除
rmdir 只能删除空目录
删除文件名中包含字符4且以 .bak结尾的文件
rm *4*.bak
删除当前目录下扩展名有四个字符的文件
rm *.????
删除文件首字母为a,b或c,且扩展名为.txt的文件
rm [abc]*.txt
删除文件名为数字字符开头,且文件扩展名为两个字符的文件
rm [0-9]*.??
文件详细信息: stat
文件权限及内容显示
文件权限: chmod
用户分类: 文件拥有者(user)、同组用户(group)、其他用户(others)
三种权限: 读(r)、写(w)、执行(x)
字符设定法
语法:chmod [who] [+ | - | =] [mode] 文件名 说明:[who]可是下述字符中的一个或它们的组合: u(user):表示“用户”,即文件或目录的所有者 g(group):表示“同组用户” o(others):表示“其他用户” a(all):表示“所有用户” [+ | - | =] :+表示添加某个权限;-表示取消某个权限; =表示赋予给定权限 [mode]:r(可读)、w(可写)、x(可执行)
设定文件test1的属性为:文件属主(u)增加执行权限,与文件属主同组用户(g)增加执行权限,其他用户(o)增加执行权限
chmod a+x test1
设定文件test2的属性为:文件属主(u)增加写权限,与文件属主同组用户(g)增加写权限,其他用户(o)删除写、执行权限
chmod ug+w,o-wx test2
删除文件test3的执行权限,以下三个命令均可
chmod a-x test3 chmod -x test3 chmod ugo-x test3
把文件test4的执行权限改为rwxrw-rw-
chmod u=rwx,g=rw,o=rw test4
数值设定法 -> 数值计算: r:4, w:2, x:1
chmod 数值 文件名
数值计算:若权限为[-rwxrw----] ower=rwx=(111)2=4+2+1=7 group=rw-=(110)2=4+2+0=6 others=---=(000)2=0 理解: mode可分为3个8进制数字,将每个8进制数字转化为2进制数字,1对应的赋予相应的权限,0对应的取消相应的权限
设定文件aaa的属性为文件属主(u)拥有读、写权限,与文件属主同组用户(g)拥有读权限,其他人(o)拥有读权限
chmod 644 aaa
设定bbb这个文件的属性为:文件属主(u)可读/可写/可执行权,与文件属主同组用户(g)可读/可执行权,其他人(o)没有任何权限
chmod 750 bbb
文件内容显示
cat: 查看文件,在屏幕上显示文件内容
- -n 显示出行号
- -A 显示文件中所有字符,包括隐藏字符
more: 分页显示文件内容
读完文件再显示;按住空格往前翻; ctrl+f
往前翻页; ctrl+b
往后翻页;按q键退出所有查看的文件
less: 分页显示文件内容
边读边显示,启动快;按住空格往前翻; ctrl+f
往前翻页; ctrl+b
往后翻页;按q键退出所有查看的文件;less扩展了more命令的功能
head: 查看文件头几行数据;了解文件中数据模式
head -n 15 test //查看test文件的前15行 head test //默认输出前10行
tail: 查看文件末尾数据;多用于查看系统日志
tail -n 15 test //查看test文件的末尾15行 tail test //默认输出末尾10行
管道: |
查看/etc目录下的文件,并将结果分页显示
ls /etc | more
查看系统中已安装软件中软件名包含字符'a'的所有软件,输出结果分页显示
dpkg -l | grep a | more
数据流
标准输入(stdin),标准输出(stdout),标准错误输出(stderr)
/dev/stdin
标准输入0
/dev/stdout
标准输出1
/dev/stderr
标准错误输出2
数据流重定向
输出重定向
以长格式形式列出/etc目录下文件信息,并将其重定向到文件right中
ls -l /etc > right ls -l right <=查看新建文件
查看计算机网卡信息并将结果输出到文件right中
ifconfig >> right
命令运行正确时重定向到right,出错时重定向到error
ls -l /etca >right 2>error
特殊用法:
将ls命令运行结果重定向到right_error (覆盖)
ls -l /etc >right_error 2>&1 ls -l /etc &>right_error
将ls命令运行结果重定向到right_error (追加)
ls -l /etc >>right_error 2>&1 ls -l /etc &>>right_error
输入重定向: wc
- -l 统计行数
- -w 统计单词数
- -c 统计字节数
统计文件test的行数、单词数以及字节数wc < test