Linux命令的组成:
命令字 [命令选项] [命令参数]
ls 命令
list
-a --all # 列出所有文件
-l # 以长格式的方式列出文件信息
-al # 短格式可以组合
目录管理命令
mkdir # make directory
mkdir -p #多级目录创建
tree
tree -d /etc/ #列出目录
tree -L 1 #按目录级别列出目录
文件管理命令
文件创建
touch filename
touch file{1..10}
touch file{a,b,c}
touch file{a..z}
touch 一个已存在的目录或文件,只会更新时间
文件时间
stat test.txt
复制命令
cp 1.txt /tmp/
cp 2.txt /tmp/2.txt.bak #复制并改名
cp -p 2.txt /tmp/ #保持原有属性
cp -r a /tmp/ #复制目录结构和文件,递归复制
cp -v ?.txt /tmp/ #将所有txt文件复制到/tmp里,并输出内容
ls *.txt # 通配符
移动命令
mv file /tmp/
mv file /tmp/file_test
mv file1 file2 file3 /opt/
mv dir/ /tmp/
删除命令
rm anan #默认提示是否删除
rm anan -f #强制删除不提醒
rm -rfv # -r递归 -f 强制 -v详细过程
文件查看命令
cat #将文件内容输出
cat -3 /ect/passwd #查看3行
cat >> server.txt << EOF #追加数据
test
EOF
cat > server.txt << EOF #覆盖文件数据
test
EOF
cat >> server.txt << -eof
test
eof
#如果重定向的操作符是<<-,那么分界符(EOF)所在行的开头部分的制表符(Tab)都将被去除。
#在我们使用cat <<EOF时,我们输入完成后,需要在一个新的一行输入EOF结束stdin的输入。EOF必须顶行写,前面不能用制表符或者空格。
#而<<-,即使最后的EOF前面有多个制表符和空格,但仍然会被当做结束分界符,表示stdin的结束。
more #分页浏览
less #分页浏览,可反复查看
head #从文件头部开始查看,默认10行
head -3 ls.txt
head -n 3 ls.txt #查看3行
tail #从文件尾部开始查看,默认10行
tail /etc/passwd #查看新建的用户
tail /var/log/messages #查看公共的日志文件
tail -f /var/log/messages #跟踪
man ls > ls.txt
文件下载命令
wget 下载的文件路径
curl -o filename 下载的文件路径, #更改名称
curl -O 下载文件的地址 #不更改路径
curl -Lo filename 下载的文件路径 #支持重定向
命令查找
yum install mlocate # 如果没有则需要安装
locate #查找文件或者目录
locate /etc/sh #搜索etc目录下以sh开始的文件
locate -i /etc/sh #搜索etc目录下,所有以sh开始的文件,忽略大小写
which #查找系统PATH变量目录下的命令(绝对路径)
echo $PATH
which ls
rpm -qf /usr/bin/df #命令的安装文件
whereis # 查找文件索引数据库下的命令,源文件、man文件,非PATH变量查找
whereis ls
wherei -b ls
字符处理命令
-r #倒序
-n #按数字排序
-t #指定分隔符(默认空格)
-k #指定第几列,指定几列几个字符(指定1,1 3.1, 3.3)
sort sort.txt #按照首5字母排序
sort -t: -k2 -n sort.txt #以:为分隔符,指定第二列排序,-n,数字排序
cat >test<eof
192.168.1.1 00:0F:AF:81:19:1F
192.168.1.10 00:0F:AF:81:19:1F
eof
start_first.last,end_fitst.last
sort -t. -k3.1,3.1n -k4.1,4.3n test.txt #按照3列的第一个字符,到第三列的第1个字符,4列的第一个字符,到第4列的第3个字符进行排序
sort -t. -k3.1,3.1n -k4.1,4.3n test.txt | uniq -c
uniq #删除重复数据
-c # 计算重复的行