cat命令主要用于查看和连接文件,需要所有者的使用权限,基本语法格式如下:
cat [选项] 文件
cat testfile
cat > testfile
cat >> testfile
cat testfile | command
cat testfile | tail -n 10
cat /dev/null ./testfile.txt
cat testfile 会将指定文件的内容输出到终端上 cat命令可以实现创建文件的作用, cat > testfile如果testfile文件不存在会自动创建文件并保存即可 在日常使用中,cat命令与管道[|]配合使用的场景比较多,例如cat testfile | ls -l 等 cat命令也可以同时查看多个文件,例如cat testfile1 tesefile2
chgrp命令主要作用是改变文件或目录所属的群组属性,与chown命令类似,区别在于chgrp命令可以是普通所有者权限可执行,chgrp命令只能修改文件或目录的所属群组,而chown命令必须要用root权限执行,且既可以改变文件或目录的群组也可修改文件或目录的群组属性,基本语法格式如下:
chgrp [所属群组] [文件或目录]
chgrp tcms testfile.txt
chgrp tcms /home/java/tool/
chgrp --reference=testfile2.txt testfile.txt
chown命令是将文件的所有者改为指定的用户或组,需要注意的是chown命令需要用超级用户root权限去执行。常规命令格式如下:
chown [参数选项] [用户]:[群组] [文件或目录]
chown tcms /home/java/main/test.java
chown -R tcms:gtcms /home/java/main/
chmod命令主要是修改文件或目前所属拥有者权限或所属群组的权限。
chmod +rwx testfile.txt
chmod 777 testfile.txt
chomd ugo+rwx testfile.txt
chmod a+rwx testfile.txt
chmod +r /home/java/test/
chmod 4 /home/java/test/
chmod a+r /home/java/test/
chmod u+w test.java
linux对文件的权限按照文件所有者(Owner)、用户组(Group)、其它用户(Other Users)区分,可见下图所示:
同时,对各自所拥有的权限划分了相应的权重分数: r – 4 w – 2 x – 1 chmod命令每三个是一组,分表代表文件所有者(User)的读、写、执行,用户组(Group)的读、写、执行以及其它用户(Other)的读、写、执行
所有者权限/权重 | 用户组权限/权重 | 其他用户权限/权重 | 文件的权限 | 文件权重分数 |
---|---|---|---|---|
rwx / 7 | rwx / 7 | rwx / 7 | -rwxrwxrwx | 777 |
rwx / 7 | r-x / 5 | r-x / 5 | -rwxr-xr-x | 755 |
rwx / 7 | r-x / 5 | r-- / 4 | -rwxr-xr-- | 754 |
cmp命令主要是比较两个文件是否有差异,返回的信息只提示有无差异,如果没有差异不显示任何信息,如果有差异显示差异的字符或列的编号
cmp test1.txt test2.txt
如果文件相同,则不显示消息。如果文件不同,则显示第一个不同的位置。differ: char 4, line 1
diff命令主要是对文件以行的形式做对比,从而比较两个文件的差异
diff test1.log test2.log
diff test1.log test2.log -y -W 60
file命令用于辨别文件的类型
file test.log
test.log: UTF-8 Unicode text
find命令用于在指定目录下查找文件和目录,它可以使用不同的选项来过滤和限制查找的结果,命令格式如下:
find [路径] [查询条件]
find . -type f -name "*.log"
find /home/log/ -type f -mtime +4
find . -name "test.sh" -exec rm {} \;
以上例子中,-exec 选项允许你执行一个命令,{} 将会被匹配到的文件名替代,; 表示命令结束。
cut命令主要用于截取字符串来用
通常配合管道|使用
who | cut -b 3
ln命令主要是为某一个文件在另外一个位置建立一个同步的链接,链接分为硬链接和软连接,命令格式如下:
ln [参数][源文件或目录][目标文件或目录]
给文件创建软链接,为log2024.log文件创建软链接link2024.log,如果log2024.log丢失,link2024.log将失效:
ln -s log2024.log link2024.log
less命令是浏览文件的命令,支持上翻下翻和搜索功能,基本语法格式如下:
less [参数选项] [文件]
less testfile.log
less testfile1.log testfile2.log
说明: 输入n:切换到testfile2.log 输入p:切回到testfile1.log
mv命令用来给文件或目录移动地址,或者给文件目录重命名,基本语法格式:
mv [参数选项] [旧文件或目录] [新文件或目录]
mv test file
mv test.txt /home/sk/test/ 将文件移动到某目录下
rm命令主要用于删除某个文件或目录
rm test.txt
rm -r /home/sk/test/
rm -r *
cp命令是一个常规且用的较广的一个命令,主要就是对文件或目录进行复制,基本语法格式:
cp [参数] [文件或目录] [文件或目录]
cp file.txt /path/to/destination/
cp –r test/ newtest
tee命令用于读取标准输入的数据,并将其内容输出成文件,基本语法格式:
tee [参数] [文件]
通常配合管道使用较多
cat rizhi.log | tee -a file.log # 读取日志文件的内容后写入到file文件中
awk命令通过提供编程语言的功能,如变量、数学运算、字符串处理等,使得对文本文件的分析和操作变得非常灵活和高效
awk '{print}' file
awk '{print NR, $0}' file
以上总结的命令,主要是针对Linux文件管理部分日常常用的一些命令,并列举了每个命令高频使用的参数和应用场景,如有其他疑问请大家评论留言指出,欢迎大家指正。最后,希望这篇博文能给大家提供些许帮助,感谢大家的支持!
我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3vtuwevgbfms4