Linux命令学习()

一:dd命令

dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
dd:操作对象是块。
cp:操作文件是文件。
在这里插入图片描述
注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2

参数注释:

  • if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
  • of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
  • ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
  • obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
  • bs=bytes:同时设置读入/输出的块大小为bytes个字节。
  • cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
  • skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
  • seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
    注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。
  • count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
  • conv=conversion:用指定的参数转换文件。
  • ascii:转换ebcdic为ascii
  • ebcdic:转换ascii为ebcdic
  • ibm:转换ascii为alternate ebcdic
  • block:把每一行转换为长度为cbs,不足部分用空格填充
  • unblock:使每一行的长度都为cbs,不足部分用空格填充
  • lcase:把大写字符转换为小写字符
  • ucase:把小写字符转换为大写字符
  • swab:交换输入的每对字节
  • noerror:出错时不停止
  • notrunc:不截短输出文件
  • sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。
    dd应用实例
1. 将本地的/dev/hdb整盘备份到/dev/hdd

dd if=/dev/hdb of=/dev/hdd

2./dev/hdb全盘数据备份到指定路径的image文件

dd if=/dev/hdb of=/root/image

3. 将备份文件恢复到指定盘

cdd if=/root/image of=/dev/hdb

4. 备份/dev/hdb全盘数据,并利用gzip工具进行压缩,保存到指定路径

dd if=/dev/hdb | gzip > /root/image.gz

5. 将压缩的备份文件恢复到指定盘

gzip -dc /root/image.gz | dd of=/dev/hdb

6. 备份与恢复MBR
 备份磁盘开始的512个字节大小的MBR信息到指定文件:

dd if=/dev/hda of=/root/image count=1 bs=512

count=1指仅拷贝一个块;bs=512指块大小为512个字节。
恢复:

dd if=/root/image of=/dev/had

将备份的MBR信息写到磁盘开始部分

7. 备份软盘

dd if=/dev/fd0 of=disk.img count=1 bs=1440k (即块大小为1.44M)

8. 拷贝内存内容到硬盘

dd if=/dev/mem of=/root/mem.bin bs=1024 (指定块大小为1k)

9. 拷贝光盘内容到指定文件夹,并保存为cd.iso文件

dd if=/dev/cdrom(hdc) of=/root/cd.iso

10. 增加swap分区文件大小
第一步:创建一个大小为256M的文件:
`dd if=/dev/zero of=/swapfile bs=1024 count=262144`
第二步:把这个文件变成swap文件:
`mkswap /swapfile`
第三步:启用这个swap文件:
`swapon /swapfile`
第四步:编辑/etc/fstab文件,使在每次开机时自动加载swap文件:
`/swapfile swap swap default 0 0`
11. 销毁磁盘数据
`dd if=/dev/urandom of=/dev/hda1`
注意:利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。
12. 测试硬盘的读写速度

dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/root/1Gb.file bs=64k | dd of=/dev/null

通过以上两个命令输出的命令执行时间,可以计算出硬盘的读、写速度。

13. 确定硬盘的最佳块大小:

dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file
dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file
dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

通过比较以上命令输出中所显示的命令执行时间,即可确定系统最佳的块大小。

14. 修复硬盘:

dd if=/dev/sda of=/dev/sda 或dd if=/dev/hda of=/dev/hda

当硬盘较长时间(一年以上)放置不使用后,磁盘上会产生magnetic flux point,当磁头读到这些区域时会遇到困难,并可能导致I/O错误。

当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数 据起死回生。并且这个过程是安全、高效的。

15. 利用netcat远程备份
`dd if=/dev/hda bs=16065b | netcat < targethost-IP > 1234`
在源主机上执行此命令备份/dev/hda
`netcat -l -p 1234 | dd of=/dev/hdc bs=16065b`
在目的主机上执行此命令来接收数据并写入/dev/hdc

netcat -l -p 1234 | bzip2 > partition.img
netcat -l -p 1234 | gzip > partition.img

以上两条指令是目的主机指令的变化分别采用bzip2、gzip对数据进行压缩,并将备份文件保存在当前目录。

16. 将一个很大的视频文件中的第i个字节的值改成0x41(也就是大写字母A的ASCII值)

echo A | dd of=bigfile seek=$i bs=1 count=1 conv=notrunc

2.文佳操作

rm 删除文件
1. rm -rf :删除文件夹包括文件
2. rm -r 递归的删除文件
mv 移动文件
cp 复制文件
mkdir 新建文件夹

3. wget命令

wget命令 用来从指定的URL下载文件。wget非常稳定,它在宽带很窄和不稳定的网络中适应性很强
wget支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。所谓的自动下载是指:wget可以在用户退出系统的之后在后台执行。意味着你可以登录一个系统,启动一个wget任务,然后退出系统,wget将在后台直到任务完成
语法 :
wget【参数】 【URL地址】
选项:

启动参数:

-V, –-version 显示wget的版本后退出
-h, –-help 打印语法帮助
-b, –-background 启动后转入后台执行
-e, –-execute=COMMAND 执行`.wgetrc’格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc

记录和输入文件参数:

-o, –-output-file=FILE 把记录写到FILE文件中
-a, –-append-output=FILE 把记录追加到FILE文件中
-d, –-debug 打印调试输出
-q, –-quiet 安静模式(没有输出)
-v, –-verbose 冗长模式(这是缺省设置)
-nv, –-non-verbose 关掉冗长模式,但不是安静模式
-i, –-input-file=FILE 下载在FILE文件中出现的URLs
-F, –-force-html 把输入文件当作HTML格式文件对待
-B, –-base=URL 将URL作为在-F -i参数指定的文件中出现的相对链接的前缀
–-sslcertfile=FILE 可选客户端证书
–-sslcertkey=KEYFILE 可选客户端证书的KEYFILE
–-egd-file=FILE 指定EGD socket的文件名

下载参数:

-bind-address=ADDRESS 指定本地使用地址(主机名或IP,当本地有多个IP或名字时使用)
-t, --tries=NUMBER 设定最大尝试链接次数(0 表示无限制).
-O --output-document=FILE 把文档写到FILE文件中
-nc, --no-clobber 不要覆盖存在的文件或使用.#前缀
-c, --continue 接着下载没下载完的文件
–progress=TYPE 设定进程条标记
-N,-timestamping 不要重新下载文件除非比本地文件新
-S,-server-response 打印服务器的回应
–-spider 不下载任何东西
-T,-timeout=SECONDS 设定响应超时的秒数
-w,-wait=SECONDS 两次尝试之间间隔SECONDS秒
–waitretry=SECONDS 在重新链接之间等待1…SECONDS秒
–random-wait 在下载之间等待02*WAIT秒
-Y,-proxy=on/off 打开或关闭代理
-Q,-quota=NUMBER 设置下载的容量限制
–limit-rate=RATE 限定下载输率

目录参数:

-nd –-no-directories 不创建目录
-x,-force-directories 强制创建目录
-nH,-no-host-directories 不创建主机目录
-P,-directory-prefix=PREFIX 将文件保存到目录 PREFIX/…
–cut-dirs=NUMBER 忽略 NUMBER层远程目录

HTTP 选项参数:

-–http-user=USER 设定HTTP用户名为 USER.
-–http-passwd=PASS 设定http密码为 PASS
-C,-cache=on/off 允许/不允许服务器端的数据缓存 (一般情况下允许)
-E,-html-extension 将所有text/html文档以.html扩展名保存
-–ignore-length 忽略 `Content-Length’头域
-–header=STRING 在headers中插入字符串 STRING
-–proxy-user=USER 设定代理的用户名为 USER
-–proxy-passwd=PASS 设定代理的密码为 PASS
-–referer=URL 在HTTP请求中包含 `Referer: URL’头
-s,-save-headers 保存HTTP头到文件
-U,-user-agent=AGENT 设定代理的名称为 AGENT而不是 Wget/VERSION
-–no-http-keep-alive 关闭 HTTP活动链接 (永远链接)-cookies=off 不使用 cookies
–-load-cookies=FILE 在开始会话前从文件 FILE中加载cookie
-–save-cookies=FILE 在会话结束后将 cookies保存到 FILE文件中

FTP 选项参数:

-nr, -–dont-remove-listing 不移走 `.listing’文件
-g, -–glob=on/off 打开或关闭文件名的 globbing机制
-–passive-ftp 使用被动传输模式 (缺省值).
-–active-ftp 使用主动传输模式
-–retr-symlinks 在递归的时候,将链接指向文件(而不是目录)

递归下载参数:

-r, -–recursive 递归下载--慎用!
-l, -–level=NUMBER 最大递归深度 (inf 或 0 代表无穷)-delete-after 在现在完毕后局部删除文件
-k,-convert-links 转换非相对链接为相对链接
-K,-backup-converted 在转换文件X之前,将之备份为 X.orig
-m,-mirror 等价于 -r -N -l inf -nr
-p,-page-requisites 下载显示HTML文件的所有图片

递归下载中的包含和不包含(accept/reject)-A,-accept=LIST 分号分隔的被接受扩展名的列表
-R,-reject=LIST 分号分隔的不被接受的扩展名的列表
-D,-domains=LIST 分号分隔的被接受域的列表
–-exclude-domains=LIST 分号分隔的不被接受的域的列表
–-follow-ftp 跟踪HTML文档中的FTP链接
–-follow-tags=LIST 分号分隔的被跟踪的HTML标签的列表
-G,-ignore-tags=LIST 分号分隔的被忽略的HTML标签的列表
-H,-span-hosts 当递归时转到外部主机
-L,-relative 仅仅跟踪相对链接
-I,-include-directories=LIST 允许目录的列表
-X,-exclude-directories=LIST 不被包含目录的列表
-np,-no-parent 不要追溯到父目录
wget -S –-spider url 不下载只显示过程

4.gzip

gzip命令 用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。

gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。

语法
gzip(选项)(参数)
选项
-a或——ascii:使用ASCII文字模式;
-d或--decompress或----uncompress:解开压缩文件;
-f或——force:强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接;
-h或——help:在线帮助;
-l或——list:列出压缩文件的相关信息;
-L或——license:显示版本与版权信息;
-n或--no-name:压缩文件时,不保存原来的文件名称及时间戳记;
-N或——name:压缩文件时,保存原来的文件名称及时间戳记;
-q或——quiet:不显示警告信息;
-r或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
-S或<压缩字尾字符串>----suffix<压缩字尾字符串>:更改压缩字尾字符串;
-t或——test:测试压缩文件是否正确无误;
-v或——verbose:显示指令执行过程;
-V或——version:显示版本信息;
-<压缩效率>:压缩效率是一个介于1~9的数值,预设值为“6”,指定愈大的数值,压缩效率就会愈高;
--best:此参数的效果和指定“-9”参数相同;
--fast:此参数的效果和指定“-1”参数相同。
-num 用指定的数字num调整压缩的速度,-1--fast表示最快压缩方法(低压缩比),-9--best表示最慢压缩方法(高压缩比)。系统缺省值为6。
参数
文件列表:指定要压缩的文件列表。

5.tar

Linux下的归档使用工具,用来打包和备份。

补充说明
tar命令 可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。

首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。

为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。

语法

tar(选项)(参数)

选项
-A或--catenate:新增文件到以存在的备份文件;
-B:设置区块大小;
-c或--create:建立新的备份文件;
-C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
-d:记录文件的差别;
-x或--extract或--get:从备份文件中还原文件;
-t或--list:列出备份文件的内容;
-z或--gzip或--ungzip:通过gzip指令处理备份文件;
-Z或--compress或--uncompress:通过compress指令处理备份文件;
-f<备份文件>--file=<备份文件>:指定备份文件;
-v或--verbose:显示指令执行过程;
-r:添加文件到已经压缩的文件;
-u:添加改变了和现有的文件到已经存在的压缩文件;
-j:支持bzip2解压文件;
-v:显示操作过程;
-l:文件系统边界设置;
-k:保留原有文件不覆盖;
-m:保留文件不被覆盖;
-w:确认压缩文件的正确性;
-p或--same-permissions:用原来的文件权限还原文件;
-P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
-N <日期格式>--newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;
--exclude=<范本样式>:排除符合范本样式的文件。

参数

文件或目录:指定要打包的文件或目录列表。

6.gunzip

用来解压缩文件

补充说明
gunzip命令 用来解压缩文件。gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为.gz。事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成。

语法
gunzip(选项)(参数)
选项
-a或——ascii:使用ASCII文字模式;
-c或--stdout--to-stdout:把解压后的文件输出到标准输出设备;
-f或-force:强行解开压缩文件,不理会文件名称或硬连接是否存在以及该文件是否为符号连接;
-h或——help:在线帮助;
-l或——list:列出压缩文件的相关信息;
-L或——license:显示版本与版权信息;
-n或--no-name:解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其忽略不予处理;
-N或——name:解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其回存到解开的文件上;
-q或——quiet:不显示警告信息;
-r或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
-S或<压缩字尾字符串>----suffix<压缩字尾字符串>:更改压缩字尾字符串;
-t或——test:测试压缩文件是否正确无误;
-v或——verbose:显示指令执行过程;
-V或——version:显示版本信息;
参数
文件列表:指定要解压缩的压缩包。

7.zcat

显示压缩包中文件的内容

补充说明

zcat命令 用于不真正解压缩文件,就能显示压缩包中文件的内容的场合。

语法
zcat(选项)(参数)
选项
-S:指定gzip格式的压缩包的后缀。当后缀不是标准压缩包后缀时使用此选项;
-c:将文件内容写到标注输出;
-d:执行解压缩操作;
-l:显示压缩包中文件的列表;
-L:显示软件许可信息;
-q:禁用警告信息;
-r:在目录上执行递归操作;
-t:测试压缩文件的完整性;
-V:显示指令的版本信息;
-l:更快的压缩速度;
-9:更高的压缩比。
参数
文件:指定要显示其中文件内容的压缩包。

8.unzip

用于解压缩由zip命令压缩的压缩包

补充说明

unzip命令 用于解压缩由zip命令压缩的“.zip”压缩包。

语法

unzip(选项)(参数)

选项
-c:将解压缩的结果显示到屏幕上,并对字符做适当的转换;
-f:更新现有的文件;
-l:显示压缩文件内所包含的文件;
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换;
-t:检查压缩文件是否正确;
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中;
-v:执行时显示详细的信息;
-z:仅显示压缩文件的备注文字;
-a:对文本文件进行必要的字符转换;
-b:不要对文本文件进行字符转换;
-C:压缩文件中的文件名称区分大小写;
-j:不处理压缩文件中原有的目录路径;
-L:将压缩文件中的全部文件名改为小写;
-M:将输出结果送到more程序处理;
-n:解压缩时不要覆盖原有的文件;
-o:不必先询问用户,unzip执行后覆盖原有的文件;
-P<密码>:使用zip的密码选项;
-q:执行时不显示任何信息;
-s:将文件名中的空白字符转换为底线字符;
-V:保留VMS的文件版本信息;
-X:解压缩时同时回存文件原来的UID/GID;
-d<目录>:指定文件解压缩后所要存储的目录;
-x<文件>:指定不要处理.zip压缩文件中的哪些文件;
-Z:unzip-Z等于执行zipinfo指令。

参数

压缩包:指定要解压的“.zip”压缩包。

重定向

| grep case 查找并输出case的包含项
| sort 通过每行的首字母来排序行文字
| head -n N 输出文件开头的N行
| tail -n N 输出文件末尾的N行

添加用户

sudo adduser liu01 而不是 useradd 命令来添加

(userdel/deluesr) -r liu01   来删除用户包括内部的home文件夹下的文件,不加r只是删除用户,不删除文件夹

less /etc/passwd 来查看用户的配置信息

less /etc/group 文件中保存有系统中所有组的名称,以及每个组的成员列表,文件中的每一行显示一个组,由4个冒号分割的字段组成。

history  命令用来查看用户的操作记录历史

su 用户名  来切换当前的用户

符号链接和硬链接

ln -s <要链接到的目的地>  <要使用的符号>
ln -s passwd passwd-so 符号链接
例如建立一个环境变量的链接

sudo ln -sT /opt/node/bin/node  /usr/local/bin/node
就不用添加path变量进行更改了

ln passwd passwd-hd    硬链接

rm  直接删除链接符号
比如 
rm passwd-hd
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值