Linux常用文件操作命令
nanshan 2025-05-14 15:21 25 浏览 0 评论
ls命令
在Linux维护工作中,经常使用ls这个命令,这是最基本的命令,来写几条常用的ls命令。
先来查看一下使用的ls版本
# ls --version ls (GNU coreutils) 8.4 Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Richard M. Stallman and David MacKenzie.
-a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来
# ls -a . .bash_history .bashrc install.log .rnd .viminfo .. .bash_logout .cshrc install.log.syslog .tcshrc anaconda-ks.cfg .bash_profile ic.asp .mysql_history test.sh
-A :全部的档案,连同隐藏档,但不包括 . 与 .. 这两个目录,一起列出来
# ls -A anaconda-ks.cfg .bash_profile ic.asp .mysql_history test.sh .bash_history .bashrc install.log .rnd .viminfo .bash_logout .cshrc install.log.syslog .tcshrc
-f :直接列出结果,而不进行排序 (ls 预设会以档名排序!)
# ls -f .bash_history install.log anaconda-ks.cfg .tcshrc .bash_profile .mysql_history ic.asp test.sh install.log.syslog .rnd .bashrc .bash_logout . .cshrc .. .viminfo
-i :列出 inode 位置,而非列出档案属性;
# ls -i 131081 anaconda-ks.cfg 131074 install.log 131087 test.sh 131085 ic.asp 131075 install.log.syslog
-l :长数据串行出,包含档案的属性等等数据。
# ls -l total 28 -rw-------. 1 root root 1232 Mar 21 2014 anaconda-ks.cfg -rw-r--r--. 1 root root 218 Mar 27 2014 ic.asp -rw-r--r--. 1 root root 10602 Mar 21 2014 install.log -rw-r--r--. 1 root root 3824 Mar 21 2014 install.log.syslog
-n :列出 UID 与 GID 而非使用者与群组的名称 (UID与GID会在账号管理提到!)
# ls -n total 28 -rw-------. 1 0 0 1232 Mar 21 2014 anaconda-ks.cfg -rw-r--r--. 1 0 0 218 Mar 27 2014 ic.asp -rw-r--r--. 1 0 0 10602 Mar 21 2014 install.log -rw-r--r--. 1 0 0 3824 Mar 21 2014 install.log.syslog -rwxrwxrwx. 1 0 0 71 Mar 22 2014 test.sh
-r :将排序结果反向输出,例如:原本档名由小到大,反向则为由大到小。
# ls -r test.sh install.log.syslog install.log ic.asp anaconda-ks.cfg
-R :连同子目录内容一起列出来
# ls -R .: anaconda-ks.cfg ic.asp install.log install.log.syslog test.sh
–full-time :以完整时间模式 (包含年、月、日、时、分) 输出
# ls --full-time total 28 -rw-------. 1 root root 1232 2014-03-21 11:47:42.036260099 +0800 anaconda-ks.cfg -rw-r--r--. 1 root root 218 2014-03-27 17:14:58.616108512 +0800 ic.asp -rw-r--r--. 1 root root 10602 2014-03-21 11:47:38.997261768 +0800 install.log -rw-r--r--. 1 root root 3824 2014-03-21 11:46:29.032261018 +0800 install.log.syslog -rwxrwxrwx. 1 root root 71 2014-03-22 15:00:12.652133897 +0800 test.sh
file命令
- 功能说明:该命令用来识别文件类型,也可用来辨别一些文件的编码格式。
- 语 法:file [ -bchikLnNprsvz ] [ -f namefile ] [ -F separator ] [ -m magicfiles ]
- 补充说明:它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。
- 参 数:
- -b 列出文件辨识结果时,不显示文件名称
- -c 详细显示指令执行过程,便于排错或分析程序执行的情形
- -f 列出文件中文件名的文件类型
- -F 使用指定分隔符号替换输出文件名后的默认的“:”分隔符。
- -i 输出mime类型的字符串
- -L 查看对应软链接对应文件的文件类型
- -z 尝试去解读压缩文件的内容
cp命令
- 功能说明:复制文件或目录。
- 语 法:cp [-abdfilpPrRsuvx][-S ][-V ][–help][–spares=][–version][源文件或目录][目标文件或目录] [目的目录]
- 补充说明:cp指令用在复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该目录中。若同时指定多个文件或目录,而最后的目的地并非是一个已存在的目录,则会出现错误信息。
- 参 数:
- -a或–archive:此参数的效果和同时指定”-dpR”参数相同。
- -b或–backup:删除,覆盖目标文件之前的备份,备份文件会在字尾加上一个备份字符串。
- -i或–interactive:覆盖既有文件之前先询问用户。
- -l或–link:对源文件建立硬连接,而非复制文件。
- -P或–parents:保留源文件或目录的路径。
rm命令
- 功能说明:删除文件或目录。
- 语 法:rm [-dfirv][–help][–version][文件或目录…]
- 补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上参数”-r”,否则预设仅会删除文件。
- 参 数:
- -d或–directory:直接把欲删除的目录的硬连接数据删成0,删除该目录。
- -f或–force:强制删除文件或目录。
- -i或–interactive:删除既有文件或目录之前先询问用户。
- -r或-R或–recursive:递归处理,将指定目录下的所有文件及子目录一并处理。
- -v或–verbose:显示指令执行过程。
mv命令
- 功能说明:移动或更名现有的文件或目录。
- 语 法:mv [-bfiuv][–help][–version][-S ][-V ][源文件或目录][目标文件或目录]
- 补充说明:mv可移动文件或目录,或是更改文件或目录的名称。
- 参 数:
- -b或–backup:若需覆盖文件,则覆盖前先行备份。
- -f或–force:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文 件或目录。
- -i或–interactive:覆盖前先行询问用户。
- -u或–update:在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。
touch命令
- 功能说明:touch命令一般用来更改文档或目录的用来修改文件时间戳,包括存取时间和更改时间。
- 语 法:touch [选项]… 文件…
- 补充说明:还可以新建一个不存在的文件。
- 参 数:
- -a 或–time=atime或–time=access或–time=use 只更改存取时间
- -c 或–no-create 不建立任何文档。
- -d 使用指定的日期时间,而非现在的时间。
- -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
- -m 或–time=mtime或–time=modify 只更改变动时间。
- -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
- -t 使用指定的日期时间,而非现在的时间。
- –no-create 不会建立新档案。
- –help 列出指令格式。
- –version 列出版本讯息。
# touch 2014test 2013test # ll -rw-r--r-- 1 root root 0 10月 6 14:54 2014 2013test -rw-r--r-- 1 root root 0 10月 6 14:54 2014 2014test
如果2012test不存在,则不创建文件
# touch -c 2012test # ll -rw-r--r-- 1 root root 0 10月 6 14:54 2014 2013test -rw-r--r-- 1 root root 0 10月 6 14:54 2014 2014test
cksum命令
- 功能说明:检查文件的CRC是否正确。
- 语 法:cksum [–help][–version][文件…]
- 补充说明:CRC是一种排错检查方式,该演算法的标准由CCITT所指定,至少可检测到99.998%的已知错误。指定文件交由cksum演算,它会回报计算结果,供用户核对文件是否正确无误。若不指定任何文件名称或是所给予的文件名为”-“,则cksum指令会从标准输入设备读取数据。
- 参 数:
- –help:在线帮助。
- –version:显示版本信息。
经常用于系统迁移时,在原服务器和迁移后服务器用cksum命令进行文件的正确性比较。
# cksum /etc/hosts 2823562723 184 /etc/hosts
chown命令
- 功能说明:修改文件及目录的所有者及组
- 语 法:chmod [-cfhvR] [–help] [–version] user[:group] file…
- 补充说明:Linux/Unix是多人多工操作系统,所有的档案皆有拥有者。利用chown可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限。
- 参 数:
- user:新的档案拥有者的使用者。
- IDgroup:新的档案拥有者的使用者群体(group)。
- -c:若该档案拥有者确实已经更改,才显示其更改动作-f : 若该档案拥有者无法被更改也不要显示错误讯息
- -h:只对于连结(link)进行变更,而非该 link 真正指向的档案
- -v:显示拥有者变更的详细资料
- -R:对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)
- –help:显示辅助说明
- –version:显示版本
文件file1.txt的拥有者为users群体为jessie。
# chown users:jessie file1.txt
将当前目录下的所有文件与子目录的拥有者皆设为users群体的使用者lamport。
# chown -R users:lamport *
chmod命令
- 功能说明: 改变文件或目录的访问权限。
- 语 法:chmod [-cfvR] [–help] [–version] mode file…
- 补充说明:设置方式采用群组名称或群组识别码皆可。
- 参 数:
- -r 表示可读取
- -w 表示可写入
- -x 表示可执行\
- -c : 若该档案权限确实已经更改,才显示其更改动作
- -f : 若该档案权限无法被更改也不要显示错误讯息
- -v : 显示权限变更的详细资料
- -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
- –help : 显示辅助说明
- –version : 显示版本
将档案 file1.txt 设为所有人皆可读取
# chmod ugo+r file1.txt
或者
# chmod a+r file1.txt
将档案file1.txt与file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入
# chmod ug+w,o-w file1.txt file2.txt
将当前目录下的所有档案与子目录皆设为任何人可读取
# chmod -R a+r *
此外chmod也可以用数字来表示权限如
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
- r=4,w=2,x=1
- rwx属性则4+2+1=7
- rw-属性则4+2=6
- r-x属性则4+1=5
chattr命令
- 功能说明:改变文件属性。
- 语 法:chattr [-RV][-v][+/-/=][文件或目录…]
- 补充说明:这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
- a:让文件或目录仅供附加用途。
- b:不更新文件或目录的最后存取时间。
- c:将文件或目录压缩后存放。
- d:将文件或目录排除在倾倒操作之外。
- i:不得任意更动文件或目录。
- s:保密性删除文件或目录。
- S:即时更新文件或目录。
- u:预防以外删除。
- 参 数:
- -R 递归处理,将指定目录下的所有文件及子目录一并处理。
- -v 设置文件或目录版本。
- -V 显示指令执行过程。
- + 开启文件或目录的该项属性。
- - 关闭文件或目录的该项属性。
- = 指定文件或目录的该项属性。
tar命令
- 功能说明: 归档文件及目录。
- 语 法:tar [-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-b ][-C ]…
- 补充说明:tar是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。
- 参 数:
- -c:创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。
- -r:把要存档的文件追加到档案文件的未尾。例如用户已经做好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。
- -t:列出档案文件的内容,查看已经备份了哪些文件。
- -u:更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
- -x:从档案文件中释放文件。
zip命令
- 功能说明:压缩文件。
- 语 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b ][-ll][-n ][-t ][-][压缩文件][文件…][-i ][-x ]…
- 补充说明:zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有”.zip”扩展名的压缩文件。
- 参 数:
- -A:调整可执行的自动解压缩文件。
- -b:指定暂时存放文件的目录。
- -c:替每个被压缩的文件加上注释。
- -d:从压缩文件内删除指定的文件。
- -D:压缩文件内不建立目录名称。
- -f:此参数的效果和指定”-u”参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
- -F:尝试修复已损坏的压缩文件。
- -g:将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
- -j:只保存文件名称及其内容,而不存放任何目录名称。
相关推荐
- CentOS 7 搭建 Harbor2.4.1 Docker镜像仓库
-
上一篇文章我们使用了registry镜像来搭建Docker私有镜像仓库,但是使用体验不是很好,没有一个可管理的UI界面,管理很麻烦。本篇文章将介绍一个新的搭建Docker镜像仓库的工具叫做Har...
- 简单认识认识mqtt及mosquitto(mqtt报文解析)
-
某项目中使用了MQTT作为进程间的通信方式,之前没用过,这两篇笔记我们就来一起学习一下这种方式。MQTT的一些介绍以下介绍内容来自《[野火]《LwIP应用开发实战指南》MQTT协议全称是Messa...
- 全源码打造高性能 LNMP 架构: 实战教程(2025最新版)
-
适用场景:企业生产环境、自建Web服务、深度性能调优操作系统:CentOS7/8、RockyLinux、Debian、Ubuntu(本文以CentOSStream9为例)技术栈:N...
- Nacos3.0重磅来袭!全面拥抱AI,单机及集群模式安装详细教程!
-
之前和大家分享过JDK17的多版本管理及详细安装过程,然后在项目升级完jdk17后又发现之前的注册和配置中心nacos又用不了,原因是之前的nacos1.3版本的,版本太老了,已经无法适配当前新的JD...
- Ubuntu24.04.2 企业级MinIO存储系统部署指南
-
一、概要1.1MinIO架构解析MinIO是一款高性能的云原生对象存储系统,采用Golang开发并遵循ApacheLicensev2.0协议。其核心架构基于纠删码(ErasureCode)技...
- 从零打造自己的 国产鸿蒙(OpenHarmony)定制系统-完整可落地流程
-
适用版本:OpenHarmony4.0/5.0Standard目标人群:想在x86PC、RK3568开发板或自有硬件上裁剪、加品牌、预装应用并生成可刷机镜像的开发者/团队目录环境准...
- 一次暂未成功的dify安装经历(dify怎么安装)
-
前几天在阿里云买了一台机,这几天一直在尝试安装dify,到现在还没安装上我是按这个教程装的https://blog.csdn.net/2401_82469710/article/details/14...
- ZLMediaKit教程(五)支持webrtc(webrtc lib)
-
ZLMediaKit系列文章(共六篇):ZLMediaKit流媒体(一)编译安装ZLMediaKit教程(二)主程序和配置文件解析ZLMediaKit教程(三)URL规则ZLMediaKit教程...
- Linux程序安装与管理指南(linux程序安装命令大全)
-
在Linux系统中,安装和管理程序主要通过包管理器和手动编译安装两种主要方式实现。以下是详细的操作指南,涵盖常见发行版(如Ubuntu/Debian、CentOS/RHEL、Fedora等)的用法。一...
- 离线状态下安装 Nginx 各个模块?这篇攻略让你轻松搞定
-
你是不是也在为离线状态下安装Nginx各个模块而发愁?在互联网大厂后端开发工作中,我们常常会遇到一些特殊的网络环境,比如公司内部的离线服务器,或是处于隔离状态的测试环境。当需要在这些离线环境中安装...
- Rust实践:Win10环境下的openssl交叉编译
-
Rust支持跨平台,可以指定生成目标平台,交叉编译也是支持的。当然,想要交叉编译成功,还需要指定平台的编译器(如:msvc、gcc等)。openssl是C语言开发的库,如果在Rust代码中用到open...
- Linux下Blackwell架构显卡(RTX5070/5090)编译PaddlePaddle指南
-
Blackwell显卡架构如RTX5070\5090等显卡当前Paddle预编译版本中包含的GPU架构(即SM架构)是有限的,比如常见的SM75(T4)、SM86(A10)、SM89(...
- 突破操作系统界限,掌握Linux的必备指南
-
#头条创作挑战赛#简介Linux是一种开源的操作系统,它的核心思想是自由和开放。Linux以其稳定性、可靠性和安全性而闻名,被广泛用于服务器和嵌入式设备中。Linux创始人Linux安装在安装Linu...
- Linux日常高频使用的100条命令,强烈建议收藏
-
查看系统信息如何查看系统版本:uname-alsb_release-acat/etc/os-release如何查看系统内核信息:uname-r如何查看系统CPU信息:lscpucat...
- Linux文件系统结构全解析(linux文件结构详解)
-
对Linux新手而言,“一切皆文件”的设计哲学常让人既兴奋又困惑——打开终端输入ls/,看到的bin、etc、var等目录到底有什么用?如何快速定位关键文件?本文将从Linux文件系统的底层逻...
你 发表评论:
欢迎- 一周热门
-
-
UOS服务器操作系统防火墙设置(uos20关闭防火墙)
-
极空间如何无损移机,新Z4 Pro又有哪些升级?极空间Z4 Pro深度体验
-
手机如何设置与显示准确时间的详细指南
-
NAS:DS video/DS file/DS photo等群晖移动端APP远程访问的教程
-
如何在安装前及安装后修改黑群晖的Mac地址和Sn系列号
-
如何修复用户配置文件服务在 WINDOWS 上登录失败的问题
-
一加手机与电脑互传文件的便捷方法FileDash
-
日本海上自卫队的军衔制度(日本海上自卫队的军衔制度是什么)
-
10个免费文件中转服务站,分享文件简单方便,你知道几个?
-
爱折腾的特斯拉车主必看!手把手教你TESLAMATE的备份和恢复
-
- 最近发表
-
- CentOS 7 搭建 Harbor2.4.1 Docker镜像仓库
- 简单认识认识mqtt及mosquitto(mqtt报文解析)
- 全源码打造高性能 LNMP 架构: 实战教程(2025最新版)
- Nacos3.0重磅来袭!全面拥抱AI,单机及集群模式安装详细教程!
- Ubuntu24.04.2 企业级MinIO存储系统部署指南
- 从零打造自己的 国产鸿蒙(OpenHarmony)定制系统-完整可落地流程
- 一次暂未成功的dify安装经历(dify怎么安装)
- ZLMediaKit教程(五)支持webrtc(webrtc lib)
- Linux程序安装与管理指南(linux程序安装命令大全)
- 离线状态下安装 Nginx 各个模块?这篇攻略让你轻松搞定
- 标签列表
-
- linux 查询端口号 (58)
- docker映射容器目录到宿主机 (66)
- 杀端口 (60)
- yum更换阿里源 (62)
- internet explorer 增强的安全配置已启用 (65)
- linux自动挂载 (56)
- 禁用selinux (55)
- sysv-rc-conf (69)
- ubuntu防火墙状态查看 (64)
- windows server 2022激活密钥 (56)
- 无法与服务器建立安全连接是什么意思 (74)
- 443/80端口被占用怎么解决 (56)
- ping无法访问目标主机怎么解决 (58)
- fdatasync (59)
- 405 not allowed (56)
- 免备案虚拟主机zxhost (55)
- linux根据pid查看进程 (60)
- dhcp工具 (62)
- mysql 1045 (57)
- 宝塔远程工具 (56)
- ssh服务器拒绝了密码 请再试一次 (56)
- ubuntu卸载docker (56)
- linux查看nginx状态 (63)
- tomcat 乱码 (76)
- 2008r2激活序列号 (65)