Linux学习笔记(二)——文件与磁盘系统

Linux学习笔记(二)——文件与磁盘系统

文件操作

ls [选项][目录名]
    -l :列出长数据串,包含文件的属性与权限数据等
    -a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
    -d :仅列出目录本身,而不是列出目录的文件数据
    -h :将文件容量以较易读的方式(GB,kB等)列出来
    -R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来

cd [路径名]
    ~ 表示home目录
    . 当前目录
    .. 上一层目录

pwd [选项] 显示当前工作目录
    -P :显示实际物理路径,而非使用连接(link)路径
    -L :当目录为连接路径时,显示连接路径

mkdir [选项] 目录
    -m, --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask
    -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
    -v, --verbose 每次创建新目录都显示信息
    --help 显示此帮助信息并退出
    --version 输出版本信息并退出

rm [选项] 文件
    -f, --force 忽略不存在的文件,从不给出提示。
    -i, --interactive 进行交互式删除
    -r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。
    -v, --verbose 详细显示进行的步骤
    --help 显示此帮助信息并退出
    --version 输出版本信息并退出  

rmdir [选项] 目录 
从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对父目录的写权限
    -p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。
    -v, --verbose 显示指令执行过程

mv [选项] 源文件或目录 目标文件或目录
对文件进行移动或改名,可以批量移动
    -b :若需覆盖文件,则覆盖前先行备份
    -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
    -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖
    -u :若目标文件已经存在,且 source 比较新,才会更新(update)
    -t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后

cp [选项] 源文件 目录 或 cp [选项] -t 目录 源文件
源文件复制至目标文件,或将多个源文件(批量)复制至目标目录
    -a -all 全选
    -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
    -t --target-directory 指定目标目录
    -i --interactive 覆盖前询问(使前面的 -n 选项失效,与-f相反)
    -n --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)
    -f --force 强行复制文件或目录,不论目的文件或目录是否已经存在
    -u --update 使用这项参数之后,只会在源文件的修改时间较目的文件更新时,或是对应的目的文件并不存在,才复制文件

cat [选项] [文件]
    显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示
    -A, --show-all 等价于 -vET
    -b, --number-nonblank 对非空输出行编号
    -e 等价于 -vE
    -E, --show-ends 在每行结束处显示 $
    -n, --number 对输出的所有行编号,由1开始对所有输出的行数编号
    -s, --squeeze-blank 有连续两行以上的空白行,就代换为一行的空白行
    -t 与 -vT 等价
    -T, --show-tabs 将跳格字符显示为 ^I
    -u (被忽略)
    -v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外 

nl [选项] [文件]
输出的文件内容自动的加上行号,与cat -n略有不同
    -b :指定行号指定的方式,主要有两种:
    -b a :表示不论是否为空行,也同样列出行号(类似 cat -n)
    -b t :如果有空行,空的那一行不要列出行号(默认值)
    -n :列出行号表示的方法,主要有三种:
    -n ln :行号在萤幕的最左方显示
    -n rn :行号在自己栏位的最右方显示,且不加 0

more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
more 命令和 cat 的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能
    +n 从笫n行开始显示
    -n 定义屏幕大小为n行
    +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
    -c 从顶部清屏,然后显示
    -d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
    -l 忽略Ctrl+l(换页)字符
    -p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
    -s 把连续的多个空行显示为一行
    -u 把文件内容中的下画线去掉

    操作指令
    Enter:向下n行,需要定义。默认为1行
    Ctrl+F:向下滚动一屏
    空格键:向下滚动一屏
    Ctrl+B:返回上一屏
    = :输出当前行的行号
    :f :输出文件名和当前行的行号
    V :调用vi编辑器
    !命令 :调用Shell,并执行命令
    q :退出more

less [参数] 文件
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
    -b <缓冲区大小> 设置缓冲区的大小
    -e 当文件显示结束后,自动离开
    -f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
    -g 只标志最后搜索的关键词
    -i 忽略搜索时的大小写
    -m 显示类似more命令的百分比
    -N 显示每行的行号
    -o <文件名> 将less 输出的内容在指定文件中保存起来
    -Q 不使用警告音
    -s 显示连续空行为一行
    -S 行过长时间将超出部分舍弃
    -x <数字> 将“tab”键显示为规定的数字空格

    操作命令
    /字符串:向下搜索“字符串”的功能
    ?字符串:向上搜索“字符串”的功能
    n:重复前一个搜索(与 / 或 ? 有关)
    N:反向重复前一个搜索(与 / 或 ? 有关)
    b 向后翻一页
    d 向后翻半页
    h 显示帮助界面
    Q 退出less 命令
    u 向前滚动半页
    y 向前滚动一行
    空格键 滚动一行
    回车键 滚动一页
    [pagedown]: 向下翻动一页
    [pageup]: 向上翻动一页

head [参数] [文件]
    head 用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行。
    -q 隐藏文件名
    -v 显示文件名
    -c<字节> 显示字节数
    -n<行数> 显示的行数

tail [必要参数] [选择参数] [文件]
显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件
    -f 循环读取
    -q 不显示处理信息
    -v 显示详细的处理信息
    -c<数目> 显示的字节数
    -n<行数> 显示行数
    --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
    -q, --quiet, --silent 从不输出给出文件名的首部
    -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

文件查找

which 可执行文件名称
在PATH变量指定的路径中,搜索某个系统命令在文件系统中的位置
    例如:which pwd

whereis [-bmsu] [BMS 目录名 -f ] 文件名
定位可执行文件、源代码文件、帮助文件在文件系统中的位置
    -b 定位可执行文件
    -m 定位帮助文件
    -s 定位源代码文件
    -u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件
    -B 指定搜索可执行文件的路径
    -M 指定搜索帮助文件的路径
    -S 指定搜索源代码文件的路径

locate [参数] [样式]
快速的搜寻文件系统内是否有指定的文件
    -e 将排除在寻找的范围之外。
    -1 如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的 权限资料。
    -f 将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案 放在资料库中。
    -q 安静模式,不会显示任何错误讯息。
    -n 至多显示 n个输出。
    -r 使用正规运算式 做寻找的条件。
    -o 指定资料库存的名称。
    -d 指定资料库的路径

find [目录路径] [选项] [表达式]
find命令将目录下符合表达式的文件路径输出
    -print find 命令将匹配的文件输出到标准输出
    -exec find 命令对匹配的文件执行该参数所给出的
    shell 命令
    -name 按照文件名查找文件
    -type 查找某一类型的文件

文件压缩与上传

tar [必要参数] [选择参数] [文件]
压缩和解压文件,tar本身不具有压缩功能,他是调用压缩功能实现的
    必要参数:
    -A 新增压缩文件到已存在的压缩
    -B 设置区块大小
    -c 建立新的压缩文件
    -d 记录文件的差别
    -r 添加文件到已经压缩的文件
    -u 添加改变了和现有的文件到已经存在的压缩文件
    -x 从压缩的文件中提取文件
    -t 显示压缩文件的内容
    -z 支持gzip解压文件
    -j 支持bzip2解压文件
    -Z 支持compress解压文件
    -v 显示操作过程
    -l 文件系统边界设置
    -k 保留原有文件不覆盖
    -m 保留文件不被覆盖
    -W 确认压缩文件的正确性

    可选参数: 
    -b 设置区块数目
    -C 切换到指定目录
    -f 指定压缩文件
    --help 显示帮助信息
    --version 显示版本信息

    例 将文件打全部打包成tar包
    tar -cvf test.tar test.log    # 仅打包,不压缩! 
    tar -zcvf test.tar.gz test.log  # 打包后,以 gzip 压缩 
    tar -zcvf test.tar.bz2 test.log # 打包后,以 bzip2 压缩

    将 tar 包解压缩
    tar -zxvf test.tar.gz

gzip [参数] [文件或者目录]
文件经它压缩过后,其名称后面会多出".gz"的扩展名
    -a或--ascii  使用ASCII文字模式。
    -c或--stdout或--to-stdout  把压缩后的文件输出到标准输出设备,不去更动原始文件。
    -d或--decompress或----uncompress  解开压缩文件。
    -f或--force  强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。
    -h或--help  在线帮助

    例:压缩所有
    gzip *

磁盘系统

df [选项] [磁盘名]
显示指定磁盘文件的可用空间
    -a 全部文件系统列表
    -h 方便阅读方式显示
    -H 等于“-h”,但是计算式,1K=1000,而不是1K=1024
    -i 显示inode信息
    -k 区块为1024字节
    -l 只显示本地文件系统
    -m 区块为1048576字节
    --no-sync 忽略 sync 命令
    -P 输出格式为POSIX
    --sync 在取得磁盘信息前,先执行sync命令
    -T 文件系统类型
    --block-size=<区块大小> 指定区块大小
    -t<文件系统类型> 只显示选定文件系统的磁盘信息
    -x<文件系统类型> 不显示选定文件系统的磁盘信息
    --help 显示帮助信息
    --version 显示版本信息

du [选项] [文件]
显示每个文件和目录的磁盘使用空间
    -a或-all 显示目录中个别文件的大小。
    -b或-bytes 显示目录或文件大小时,以byte为单位。
    -- -c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
    -k或--kilobytes 以KB(1024bytes)为单位输出。
    -m或--megabytes 以MB为单位输出。
    -s或--summarize 仅显示总计,只列出最后加总的值。
    -h或--human-readable 以K,M,G为单位,提高信息的可读性。
    -x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
    -L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
    -S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
    -X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
    --exclude=<目录或文件> 略过指定的目录或文件。
    -D或--dereference-args 显示指定符号链接的源文件大小。
    -H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
    -l或--count-links 重复计算硬件链接的文件。

参考文章及致谢

45个常用Linux命令,让你轻松玩转Linux!
Linux命令大全|菜鸟教程

本文及参考文章仅供学习交流使用,禁止用于非法或商业用途,如有侵权请联系作者。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值