Linux文件管理和编辑常用命令

Linux文件管理和编辑常用命令

Linux文件管理和编辑常用命令

mkdir 命令

  1. 功能说明
    mkdir 命令用于创建一个目录,mkdir是make directory的缩写
    格式:

    mkdir [选项] 目录名

    mkdir 命令的选项及说明

    -m  对新建目录设置存取权限-p  可以指定一个路径名称(一次创建多个目录)
  2. 简单示例
    在/home目录下创建user1目录,同时在user01目录下创建user2目录
    [[email protected] ~]# mkdir -p /home/user1/user2[[email protected] ~]# cd /home/user1/user2/[[email protected] user2]# pwd/home/user1/user2

mkdir 命令

  1. 功能说明
    more命令读取文本文件时,每次显示一屏,并且在每屏后暂停。
    格式:

    more [选项] 文件名

    more命令的选项及其说明

    -d  在屏幕底部more提示符显示友好提示-s  将输出文件中的多个空行减少为只有一个空行输出,以第一行为准-p  先清除显示屏以前的信息,再显示文本信息-c  显示文件时,每屏都清除屏幕先前的信息,然后从最顶端显示出来
  2. 简单示例
    分页显示yum.log文件内容
    [[email protected] ~]# more yum.log

    显示yum.log文件内容,每10行显示一屏,同时清屏

    [[email protected] ~]# more -c -10 yum.log

cat 命令

  1. 功能说明
    cat 命令用来将文件内容输出到标准输出,同时cat可以用于连接合并文件
    格式:

    cat [选项] 文件名
    或cat 文件1 文件2 > 文件3

    cat选项及其说明

    -A  将文件中的制表符显示为“^I”,同时在每行的末尾显示一下“$”符号-b  将文件中的所有非空行按顺序编号,编号从1开始-n  显示文件行号(包括空行)
  2. 简单示例
    查看config文件内容,同时将文件中的制表符显示为“^I”,并对非空行编号
    [[email protected] ~]# cat -Ab /etc/selinux/config $ 1  # This file controls the state of SELinux on the system.$
     2  # SELINUX= can take one of these three values:$
     3  #     enforcing - SELinux security policy is enforced.$
     4  #     permissive - SELinux prints warnings instead of enforcing.$
     5  #     disabled - No SELinux policy is loaded.$
     6  SELINUX=disabled$ 7  # SELINUXTYPE= can take one of three two values:$
     8  #     targeted - Targeted processes are protected,$
     9  #     minimum - Modification of targeted policy. Only selected processes are protected. $10  #     mls - Multi Level Security protection.$11  SELINUXTYPE=targeted $
    $
    $
    [[email protected] ~]#

    将两个文档合并输出到第三个文件中

    [[email protected] ~]# echo "This is file1.txt" > file1.txt[[email protected] ~]# 
    [[email protected] ~]# echo "This is file2.txt" > file2.txt [[email protected] ~]# 
    [[email protected] ~]# cat file1.txt file2.txt > file3.txt[[email protected] ~]# 
    [[email protected] ~]# more file3.txt This is file1.txtThis is file2.txt[[email protected] ~]#

diff 命令

  1. 功能介绍
    diff 命令用于比较两个文件的差异。diff以逐行的方式比较文件的异同,如果指定的是目录,则比较目录中文件名相同的文件,不会比较子目录。
    格式:

    diff [选项]文件1 文件2

    diff 选项及其说明

    -c  显示全部内容,并标出不同之处-b  忽略尾行的空格,同时字符串中的一个或多个空格都视为相同-r  当文件1和文件2为目录时,会比较子目录的文件-s  当两个文件相同时,显示文件的相同信息
  2. 简单示例
    比较文件file1.txt file2.txt 的异同
    [[email protected] ~]# diff file1.txt file2.txt 1c1< This is file1.txt---> This is file2.txt[[email protected] ~]# diff file1.txt file3.txt  1a2> This is file2.txt[[email protected] ~]# 
    [[email protected] ~]# diff -c file1.txt file3.txt *** file1.txt   2017-08-26 23:06:21.583437621 +0800--- file3.txt   2017-08-26 23:07:01.678173298 +0800
    ***************
    *** 1 ****--- 1,2 ----
      This is file1.txt+ This is file2.txt[[email protected] ~]#

grep 命令

  1. 功能说明
    grep命令是linux下文本过滤工具,grep根据指定的字符串,对文本的每一行进行搜索,如果找到这个字符串,就输出该行的内容
    格式

    grep [选项] 需要查找的字符串文件名

    grep 命令的选项的常用选项说明

    -A NUM  除了列出符合条件的行外,同时列出每个符合条件的后NUM行-c  只显示符合条件的行数,而不显示每行的具体信息-f file 事先将要搜索的样式写入一个文件中,每行一个样式,然后以这个文件作为条件进行搜索-i  搜索时忽略大小写-n  在搜索结果中显示行号-B  与选项“-A”相反,除了列出符合条件的行外,同时列出每个符合条件行的钱NUM行
  2. 简单示例
    列出config文件中含有disabled字符串的行
    [[email protected] ~]# grep disabled config#     disabled - No SELinux policy is loaded.SELINUX=disabled[[email protected] ~]#

    列出config文件中含有disabled字符串的行,并标识每行的具体行号

    [[email protected] ~]# grep -n disabled config6:#     disabled - No SELinux policy is loaded.7:SELINUX=disabled[[email protected] ~]#

rm 命令

  1. 功能说明
    rm 命令用来删除某个目录及其下的所有文件及子目录,对于链接文件,只是断开链接,原文件不变
    格式

    rm [选项] 文件或者目录

    rm 命令的选项及说明

    -r  告诉rm将选项中列出的全部目录以及子目录文件均递归删除,如果不指定"-r"选项,“rm”命令不能删除非空目录-f  忽略不存在问题,也不给出提示-i  交互式删除,即在删除前确认
  2. 简单示例
    删除 file3文件
    [[email protected] ~]# rm -rf file3.txt

    [注:]使用命令结合“rm -rf”时需小心,因为文件一旦删除,就不能不想恢复,建议使用“-i”选项,在删除时,再确认是否要删除文件


touch 命令

  1. 功能说明
    touch 命令用来改变指定文件的访问时间和修改时间,若指定文件不存在则创建此文件,若不指定时间,则使用当前时间

    touch [选项] 设定的时间文件

    touch命令的选项及其说明

    -a  改变文件的访问时间为系统当前时间,无须设置时间选项-m  改变文件的修改时间为系统当前时间,无须设置时间格式-c  如果文件不存在,不创建也不提升-d 或 -t 使用指定的日期或时间-r<参考文件或目录> 把指定文件或目录的日期,时间都设定成和参考文件或目录的日期,时间相同
  2. 简单示例
    touch命令的操作实例,“#”号后面的内容为命令注释
    [[email protected] ~]# touch test.txt  # 创建一个文件test.txt[[email protected] ~]# ls -l test.txt   # 显示文件创建时间-rw-r--r-- 1 root root 0 Aug 27 00:49 test.txt[[email protected] ~]# date    # 系统当前时间Sun Aug 27 00:50:06 CST 2017[[email protected] ~]# ls -lu test.txt -rw-r--r-- 1 root root 0 Aug 27 00:49 test.txt[[email protected] ~]# touch -a test.txt # 改变文件访问时间为系统当前时间[[email protected] ~]# 
    [[email protected] ~]# ls -lu test.txt -rw-r--r-- 1 root root 0 Aug 27 00:50 test.txt[[email protected] ~]# 
    [[email protected] ~]# touch -m test.txt # 改变文件的修改时间为系统当前时间[[email protected] ~]# 
    [[email protected] ~]# ls -l test.txt -rw-r--r-- 1 root root 0 Aug 27 00:50 test.txt[[email protected] ~]# 
    [[email protected] ~]#

ln 命令

  1. 功能说明
    ln 命令用来在文件或目录之间创建链接
    linux 环境下有硬链接和软连接两种
    硬链接:是指通过文件的incode来进行链接
    软链接:是一个指向真正文件或者目录位置的符号连接(类似于windows系统的快捷方式)
    格式:

    ln [选项] 源文件 目标链接名

    ln命令选项及其说明

    -f  如果在目标位置存在与链接名相同的文件,这个文件将被删除-s  进行软链接-d  允许系统管理员硬链接自己的目录-b  对将在链接时会被覆盖或者删除的文件进行备份
  2. 简单示例
    将/etc/inittab文件进行硬链接到/opt/backup目录下(此时,backup目录下会生成一个inittab文件,与源文件内容相同)
    [[email protected] ~]# ln /etc/inittab /opt/backup/inittab

    将/etc/inittab文件进行软链接到/opt目录下

    [[email protected] ~]# ln -s /etc/inittab /opt/[[email protected] ~]# ls -l /opt/total 4lrwxrwxrwx 1 root root  12 Aug 27 01:08 inittab -> /etc/inittab[[email protected] ~]#

file 命令

  1. 功能说明
    file命令用来显示文件的类型,对于长度为0的文件,将识别为空文件,对于符号连接文件,默认情况下将显示符号链接引用的真实文件路径
    格式

    file [选项] 文件名

    file命令的选项及说明

    -b  显示文件类型结果,不显示对应文件名称-L  直接显示符号链接所指向文件的类型-z  显示压缩文件的信息-i  如果文件不是常规文件,则不进一步对文件类型进行分类
  2. 简单示例
    显示/etc/init.d/network文件类型,显示结果为shell可执行文件
    [[email protected] ~]# file /etc/init.d/network /etc/init.d/network: Bourne-Again shell script, ASCII text executable
    [[email protected] ~]#

    显示/bin/sh文件的类型,显示结果为符号链接文件

    [[email protected] ~]# file /bin/sh/bin/sh: symbolic link to `bash‘[[email protected] ~]#

    显示file1.txt文件类型。显示结果为ASCII文件文本

    [[email protected] ~]# file file1.txt file1.txt: ASCII text[[email protected] ~]#

    显示/dev/sda1文件类型,显示结果为块设备文件

    [[email protected] ~]# file /dev/sda1 /dev/sda1: block special
    [[email protected] ~]#

cp 命令

  1. 功能说明
    cp命令用来将给出的文件或者目录复制到另一个文件或者目录
    格式:

    cp [选项] 源文件母子目录 目标文件或者目录

    cp命令的选项及其说明

    -a  在复制目录时使用,它保留所有信息,包含文件链接,文件属性,并递归地复制目录-r  若给出的原文件是一个目录文件,此时cp将递归复制该目录下所有的子目录和文件-d  复制时保留链接,这样不会失去链接文件-p  保留文件的修改时间和存取权限-i  如果已经有相同文件名的目标文件,则提示用户是否覆盖
  2. 简单示例
    将当前目录下的所有文件复制到/tmp目录下,“./*”表示当前目录下所有文件和目录
    [[email protected] ~]# cp -r ./* /tmp

    将/home目录下的目录及子目录全部复制到/tmp目录下

    [[email protected] ~]# cp -r /home/ /tmp/

find 命令

  1. 功能说明
    find 命令用于在指定的路径下查找指定的文件
    格式:

    find path-name[-options] [-print -exec -ok命令 {} \;]

    选项说明:

    -amin<分钟>:查找在指定时间曾被存取过的文件或目录,单位以分钟计算; -anewer<参考文件或目录>:查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录; -atime<24小时数>:查找在指定时间曾被存取过的文件或目录,单位以24小时计算; -cmin<分钟>:查找在指定时间之时被更改过的文件或目录; -cnewer<参考文件或目录>查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录; -ctime<24小时数>:查找在指定时间之时被更改的文件或目录,单位以24小时计算; -daystart:从本日开始计算时间; -depth:从指定目录下最深层的子目录开始查找; -expty:寻找文件大小为0 Byte的文件,或目录下没有任何子目录或文件的空目录; -exec<执行指令>:假设find指令的回传值为True,就执行该指令; -false:将find指令的回传值皆设为False; -fls<列表文件>:此参数的效果和指定“-ls”参数类似,但会把结果保存为指定的列表文件; -follow:排除符号连接; -fprint<列表文件>:此参数的效果和指定“-print”参数类似,但会把结果保存成指定的列表文件; -fprint0<列表文件>:此参数的效果和指定“-print0”参数类似,但会把结果保存成指定的列表文件; -fprintf<列表文件><输出格式>:此参数的效果和指定“-printf”参数类似,但会把结果保存成指定的列表文件; -fstype<文件系统类型>:只寻找该文件系统类型下的文件或目录; -gid<群组识别码>:查找符合指定之群组识别码的文件或目录; -group<群组名称>:查找符合指定之群组名称的文件或目录; -help或——help:在线帮助; -ilname<范本样式>:此参数的效果和指定“-lname”参数类似,但忽略字符大小写的差别; -iname<范本样式>:此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别; -inum:查找符合指定的inode编号的文件或目录; -ipath<范本样式>:此参数的效果和指定“-path”参数类似,但忽略字符大小写的差别; -iregex<范本样式>:此参数的效果和指定“-regexe”参数类似,但忽略字符大小写的差别; -links<连接数目>:查找符合指定的硬连接数目的文件或目录; -iname<范本样式>:指定字符串作为寻找符号连接的范本样式; -ls:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出; -maxdepth<目录层级>:设置最大目录层级; -mindepth<目录层级>:设置最小目录层级; -mmin<分钟>:查找在指定时间曾被更改过的文件或目录,单位以分钟计算; -mount:此参数的效果和指定“-xdev”相同; -mtime<24小时数>:查找在指定时间曾被更改过的文件或目录,单位以24小时计算; -name<范本样式>:指定字符串作为寻找文件或目录的范本样式; -newer<参考文件或目录>:查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录; -nogroup:找出不属于本地主机群组识别码的文件或目录; -noleaf:不去考虑目录至少需拥有两个硬连接存在; -nouser:找出不属于本地主机用户识别码的文件或目录; -ok<执行指令>:此参数的效果和指定“-exec”类似,但在执行指令之前会先询问用户,若回答“y”或“Y”,则放弃执行命令; -path<范本样式>:指定字符串作为寻找目录的范本样式; -perm<权限数值>:查找符合指定的权限数值的文件或目录; -print:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式为每列一个名称,每个名称前皆有“./”字符串; -print0:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式为全部的名称皆在同一行; -printf<输出格式>:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式可以自行指定; -prune:不寻找字符串作为寻找文件或目录的范本样式; -regex<范本样式>:指定字符串作为寻找文件或目录的范本样式; -size<文件大小>:查找符合指定的文件大小的文件; -true:将find指令的回传值皆设为True; -type<文件类型>:只寻找符合指定的文件类型的文件; -uid<用户识别码>:查找符合指定的用户识别码的文件或目录; -used<日数>:查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算; -user<拥有者名称>:查找符和指定的拥有者名称的文件或目录; -version或——version:显示版本信息; -xdev:将范围局限在先行的文件系统中; -xtype<文件类型>:此参数的效果和指定“-type”参数类似,差别在于它针对符号连接检查。
  2. 简单示例
    列出当前目录及子目录下所有文件和文件夹
    [[email protected] ~]# find .

在/home目录下查找以.txt结尾的文件名

[[email protected] ~]# find /home -name "*.txt"

同上,但忽略大小写

[[email protected] ~]# find /home -iname "*.txt"

当前目录及子目录下查找所有以.txt和.pdf结尾的文件

[[email protected] ~]#  find . \( -name "*.txt" -o -name "*.pdf" \) 或 
[[email protected] ~]# find . -name "*.txt" -o -name "*.pdf"

匹配文件路径或者文件

[[email protected] ~]#  find /usr/ -path "*local*"

基于正则表达式匹配文件路径

[[email protected] ~]# find . -regex ".*\(\.txt\|\.pdf\)$"

split 命令

  1. 功能说明
    split命令用于分割文档,将一个文档分拆成几个
    格式:

    split [选项] [input_file] [output_file]

    split命令选项说明

    -b size 指定分割出来的文件大小,size可以加入单位,b表示512字节,k表示1KB,m表示1MB-n  将“n”指定分割的每个文件的长度,默认为1000行-d  将split命令生成的文件序列以数字形式命名-a  指定split命令生成的文件序列的长度,默认长度为2
  • input_file: 需要分割的文件
  • output_file: 分割出来的文件序列,split命令分割后生成的文件序列依次排序
  1. 简单示例
    将messages-20170925文件分割,设定每个分割文件的大小为10KB

    [[email protected] ~]# split -b 10k messages-20170925 messages

mv 命令

  1. 功能说明
    mv命令用来将文件或者目录改名或者将文件由一个目录移动到另一个目录下
    格式:

    mv [选项] 源文件或者目录 目标文件或者目录

    mv命令的选项及其说明

    -i  交互式操作,在对已经存在的文件或者目录覆盖时,系统会询问是否覆盖-f  禁止交互式操作,在mv将要覆盖文件或者目录时,不提示任何提示,默认覆盖
  2. 简单示例
    修改文件名,将12333.jpg重命名为1111.jpg
    [[email protected] ~]# mv 12333.jpg 1111.jpg
时间: 2024-10-12 22:14:14

Linux文件管理和编辑常用命令的相关文章

linux系统-用户管理-常用命令

linux系统-用户管理-常用命令 一 用户 1 useradd 用户名 [-参数].. 2 passwd 改密码 3 usermod 修改用户的信息 [-G 添加用户到用户组] [-L禁用用户][-U恢复用户] 二 用户组 1 groupadd 组名 [-参数] 添加用户组 2 groupdel  删除用户组 3 groupmod 设置信息 三 用户与用户组 1 添加用户到用户组:gpasswd -a 用户组 用户 2 用户组删除用户:gpasswd -d 用户 3 设置用户组管理员:gpas

Linux的简介及常用命令

Linux的组成: 内核:是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序. shell:是系统的用户界面,提供了用户和内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行,是一个命令解释器.但它不仅使命令解释器,而且还是高级编程语言,shell编程. 文件系统:文件系统是文件存放在磁盘等存储设备上的组织方法,Linux支持多种文件系统,如:ext3,ext2,NFS,SMB,iso9660等 应用程序:标准的Linux操作系统都会有一套应用程序例如X-Windo

二十八、Linux下Vim工具常用命令

在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用.作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来. 当然,直接在命令行上输入:vimtutor,就可以学习到Vim的所有命令了.Vim很强大,很多牛人在vim里集成很多插件什么的,但这里只介绍基本vim命令 移动命令 h "左 j "下 k "上 l "右 w "光标移动到下一个单词的首字符 a word forward b "光标移动到上一个单词的首

Linux文件管理与编辑的基本命令

 Linux文件管理与编辑的基本命令 dir和vdir grep file mkdir rm cp more touch find cat ln split diff mv 一.列出目录内容:dir和vdir Windows用户可能更熟悉dir这个命令.在Linux中,dir除了比ls的功能更少,其他都是一样的. [[email protected]  ~]# dir  /etc/init.d/ Vdir相当于ls命令加上-l选项,默认情况下列出目录和文件的完成信息 二.创建目录:mkdir m

c/c++unix/linux基础学习笔记-常用命令和vi的使用

linux 基本命令的使用-命令在ubuntu下面执行,有些命令通用其他linux,有些不通用. 多条命令间用;号隔开,回车后可以一起执行. clear-前屏,pwd显示当前目录,cd跳转目录. sudo [命令]  -ubuntu 下以管理员身份运行命令. 一般情况下,运行当前目录下的程序,要用 ./文件名 执行. 查看当前shell名称:ps 进入另外一个shell,直接输入shell名称:ksh/tcsh/sh/bash,退出一个shell用:exit. 切换shell命令,如:exec

Linux运维最常用命令汇总

Linux运维最常用命令汇总?线上查询及帮助命令? 命令 说明 man 查看命令帮助,命令的词典,更复杂的还有info,但不常用.(man手册) help 查看Linux内置命令的帮助,比如cd命令.查看命令帮助,命令的词典,更复杂的还有info,但不常用.(man手册)help 查看Linux内置命令的帮助,比如cd命令. ?文件和目录操作命令 命令 说明 ls 全拼list,功能是列出目录的内容及其内容属性信息. cd 全拼change directory,功能是从当前工作目录切换到指定的工

Linux基础系统优化及常用命令

# Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ifconfig 查询.设置网卡和ip等参数- ifup,ifdown 脚本命令,更简单的方式启动关闭网络- ip 符合指令,直接修改上述功能 ```bash在我们刚装好linux的时候,需要用xshell进行远程连接,那就得获取ip地址,有时候网卡默认是没启动的,Linux也就拿不到ip地址,因

linux 几个不常用命令学习 之 cal 命令

看了极客里面的文章:一些实用但不为人知的unix命令 文章参考:http://blog.jobbole.com/66590/ 准备好好学习下这些命令,成为Linux高手 这次学习显示日历命令:cal #显示日历,默认格式 $ cal 五月 2014 日 一 二 三 四 五 六 1  2  3 4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #默认日历显示是从星期天作为第一天,你也

Linux系统管理和维护常用命令

Linux系统管理和维护常用命令 Linux系统管理和维护常用命令 ls 命令 功能说明ls 命令显示指定工作目录下的内容,列出工作目录所包含的文件及子目录.语法结构: ls [选项] [路径或文件] ls 选项及说明 -a  显示指定目录下的所有文件以及子目录,包含隐藏文件-d  只显示目录列表,不显示文件-l  除文件名称外,同时将文件或者子目录的权限,使用者和文件大小等详细信息列出-s  在每个文件名后输出该文件的大小-k  以k字节的形式表示文件的大小-u  以文件上次被访问的时间排序-