Linux 命令大全

Linux 命令大全,第1张

Linux运维人员必会的120个命令

来自《跟老男孩学Linux运维:核心系统命令实战》一书

前言

第1章 Linux命令行简介 / 1

11Linux命令行概述 / 1

12在Linux命令行下查看命令帮助 / 4

13Linux shutdown reboot halt / 9

关机:

shutdown -h now

halt

init 0

第2章 文件目录 *** 作命令 / 13

21pwd:显示当前所在的位置 / 13

22cd:切换目录 / 16

23tree:以树形结构显示目录下的内容 / 18

24mkdir:创建目录 / 22

25touch:创建空文件或改变文件的时间戳属性 / 27

26ls:显示目录下的内容及相关属性信息 / 30

27cp:复制文件或目录 / 39

28mv:移动或重命名文件 / 42

29rm:删除文件或目录 / 45

210rmdir:删除空目录 / 48

211ln:硬链接与软链接 / 49

212readlink:查看符号链接文件的内容 / 54

213find:查找目录下的文件 / 55

214xargs:将标准输入转换成命令行参数 / 68

215rename:重命名文件 / 71

216basename:显示文件名或目录名 / 72

217dirname:显示文件或目录路径 / 72

218chattr:改变文件的扩展属性 / 73

219lsattr:查看文件扩展属性 / 75

220file:显示文件的类型 / 76

221md5sum:计算和校验文件的MD5值 / 77

222chown:改变文件或目录的用户和用户组 / 80

223chmod:改变文件或目录权限 / 81

224chgrp:更改文件用户组 / 85

225umask:显示或设置权限掩码 / 86

226老男孩从新手成为技术大牛的心法 / 90

第3章 文件过滤及内容编辑处理命令 / 91

31cat:合并文件或查看文件内容 / 91

32tac:反向显示文件内容 / 103

33more:分页显示文件内容 / 104

34less:分页显示文件内容 / 107

35head:显示文件内容头部 / 109

36tail:显示文件内容尾部 / 111

37tailf:跟踪日志文件 / 114

38cut:从文本中提取一段文字并输出 / 115

39split:分割文件 / 117

310paste:合并文件 / 118

311sort:文本排序 / 123

312join:按两个文件的相同字段合并 / 127

313uniq:去除重复行 / 129

314wc:统计文件的行数、单词数或字节数 / 131

315iconv:转换文件的编码格式 / 133

316dos2unix:将DOS格式文件转换成UNIX格式 / 134

317diff:比较两个文件的不同 / 135

318vimdiff:可视化比较工具 / 138

319rev:反向输出文件内容 / 139

320tr:替换或删除字符 / 140

321od:按不同进制显示文件 / 143

322tee:多重定向 / 145

323vi/vim:纯文本编辑器 / 147

324老男孩逆袭思想:做Linux运维的多个好处 / 152

第4章 文本处理三剑客 / 153

41grep:文本过滤工具 / 153

42sed:字符流编辑器 / 159

43awk基础入门 / 165

第5章 Linux信息显示与搜索文件命令 / 176

51uname:显示系统信息 / 176

52hostname:显示或设置系统的主机名 / 178

53dmesg:系统启动异常诊断 / 179

54stat:显示文件或文件系统状态 / 181

55du:统计磁盘空间使用情况 / 183

56date:显示与设置系统时间 / 186

57echo:显示一行文本 / 190

58watch:监视命令执行情况 / 193

59which:显示命令的全路径 / 195

510whereis:显示命令及其相关文件全路径 / 196

511locate:快速定位文件路径 / 197

512updatedb:更新mlocate数据库 / 199

513老男孩逆袭思想:新手在工作中如何问问题不会被鄙视 / 200

第6章 文件备份与压缩命令 / 201

61tar:打包备份 / 201

62gzip:压缩或解压文件 / 208

63zip:打包和压缩文件 / 211

64unzip:解压zip文件 / 212

65scp:远程文件复制 / 214

66rsync:文件同步工具 / 216

67老男孩逆袭思想:新手如何高效地提问 / 220

第7章 Linux用户管理及用户信息查询命令 / 222

71 useradd:创建用户 / 222

72usermod:修改用户信息 / 227

73userdel:删除用户 / 229

74groupadd:创建新的用户组 / 230

75groupdel:删除用户组 / 231

76passwd:修改用户密码 / 232

77chage:修改用户密码有效期 / 237

78chpasswd:批量更新用户密码 / 238

79su:切换用户 / 240

710visudo:编辑sudoers文件 / 242

711sudo:以另一个用户身份执行命令 / 244

712id:显示用户与用户组的信息 / 248

713w:显示已登录用户信息 / 249

714who:显示已登录用户信息 / 250

715users:显示已登录用户 / 252

716whoami:显示当前登录的用户名 / 253

717last:显示用户登录列表 / 253

718lastb:显示用户登录失败的记录 / 254

719lastlog:显示所有用户的最近登录记录 / 255

第8章 Linux磁盘与文件系统管理命令 / 257

81fdisk:磁盘分区工具 / 257

82partprobe:更新内核的硬盘分区表信息 / 265

83tune2fs:调整ext2/ext3/ext4文件系统参数 / 266

84parted:磁盘分区工具 / 268

85mkfs:创建Linux文件系统 / 272

86dumpe2fs:导出ext2/ext3/ext4文件系统信息 / 274

87resize2fs:调整ext2/ext3/ext4文件系统大小 / 275

88fsck:检查并修复Linux文件系统 / 278

89dd:转换或复制文件 / 281

810mount:挂载文件系统 / 284

811umount:卸载文件系统 / 288

812df:报告文件系统磁盘空间的使用情况 / 289

813mkswap:创建交换分区 / 293

814swapon:激活交换分区 / 294

815swapoff:关闭交换分区 / 295

816sync:刷新文件系统缓冲区 / 296

第9章 Linux进程管理命令 / 298

91ps:查看进程 / 298

92pstree:显示进程状态树 / 305

93pgrep:查找匹配条件的进程 / 306

94kill:终止进程 / 307

95killall:通过进程名终止进程 / 310

96pkill:通过进程名终止进程 / 311

97top:实时显示系统中各个进程的资源占用状况 / 313

98nice:调整程序运行时的优先级 / 320

99renice:调整运行中的进程的优先级 / 323

910nohup:用户退出系统进程继续工作 / 324

911strace:跟踪进程的系统调用 / 325

912ltrace:跟踪进程调用库函数 / 332

913runlevel:输出当前运行级别 / 334

914init:初始化Linux进程 / 335

915service:管理系统服务 / 335

第10章 Linux网络管理命令 / 338

101ifconfig:配置或显示网络接口信息 / 338

102ifup:激活网络接口 / 343

ifup eth0

103ifdown:禁用网络接口 / 343

ifdown eth0

service network restart(/etc/initd/network restart) 激活整个网络,所有网卡。

104route:显示或管理路由表 / 344

105arp:管理系统的arp缓存 / 350

106ip:网络配置工具 / 351

107netstat:查看网络状态 / 358

108ss:查看网络状态 / 362

109ping:测试主机之间网络的连通性 / 363

1010traceroute:追踪数据传输路由状况 / 366

1011arping:发送arp请求 / 367

1012telnet:远程登录主机 / 369

1013nc:多功能网络工具 / 370

1014ssh:安全地远程登录主机 / 373

1015wget:命令行下载工具 / 376

1016mailq:显示邮件传输队列 / 379

1017mail:发送和接收邮件 / 381

1018nslookup:域名查询工具 / 386

1019dig:域名查询工具 / 389

1020host:域名查询工具 / 393

1021nmap:网络探测工具和安全/端口扫描器 / 394

1022tcpdump:监听网络流量 / 398

第11章 Linux系统管理命令 / 407

111lsof:查看进程打开的文件 / 407

112uptime:显示系统的运行时间及负载 / 411

113free:查看系统内存信息 / 411

114iftop:动态显示网络接口流量信息 / 413

115vmstat:虚拟内存统计 / 415

116mpstat:CPU信息统计 / 419

117iostat:I/O信息统计 / 420

118iotop:动态显示磁盘I/O统计信息 / 423

119sar:收集系统信息 / 425

1110chkconfig:管理开机服务 / 430

1111ntsysv:管理开机服务 / 433

1112 setup:系统管理工具 / 434

1113ethtool:查询网卡参数 / 436

1114mii-tool:管理网络接口的状态 / 437

1119rpm:RPM包管理器 / 443

1120yum:自动化RPM包管理工具 / 446

top命令

第12章 Linux系统常用内置命令 / 450

121Linux内置命令概述 / 450

122Linux内置命令简介 / 450

123Linux常用内置命令实例 / 452

Linux运维人员必会的120个命令

跟老男孩学Linux运维:核心系统命令实战

前言

第1章 Linux命令行简介 / 1

11Linux命令行概述 / 1

12在Linux命令行下查看命令帮助 / 4

13Linux shutdown reboot halt / 9

关机:

shutdown -h now

halt

init 0

第2章 文件和目录 *** 作命令 / 13

21pwd:显示当前所在的位置 / 13

22cd:切换目录 / 16

23tree:以树形结构显示目录下的内容 / 18

24mkdir:创建目录 / 22

25touch:创建空文件或改变文件的时间戳属性 / 27

26ls:显示目录下的内容及相关属性信息 / 30

27cp:复制文件或目录 / 39

28mv:移动或重命名文件 / 42

29rm:删除文件或目录 / 45

210rmdir:删除空目录 / 48

211ln:硬链接与软链接 / 49

212readlink:查看符号链接文件的内容 / 54

213find:查找目录下的文件 / 55

214xargs:将标准输入转换成命令行参数 / 68

215rename:重命名文件 / 71

216basename:显示文件名或目录名 / 72

217dirname:显示文件或目录路径 / 72

218chattr:改变文件的扩展属性 / 73

219lsattr:查看文件扩展属性 / 75

220file:显示文件的类型 / 76

221md5sum:计算和校验文件的MD5值 / 77

222chown:改变文件或目录的用户和用户组 / 80

223chmod:改变文件或目录权限 / 81

224chgrp:更改文件用户组 / 85

225umask:显示或设置权限掩码 / 86

226老男孩从新手成为技术大牛的心法 / 90

第3章 文件过滤及内容编辑处理命令 / 91

31cat:合并文件或查看文件内容 / 91

32tac:反向显示文件内容 / 103

33more:分页显示文件内容 / 104

34less:分页显示文件内容 / 107

35head:显示文件内容头部 / 109

36tail:显示文件内容尾部 / 111

37tailf:跟踪日志文件 / 114

38cut:从文本中提取一段文字并输出 / 115

39split:分割文件 / 117

310paste:合并文件 / 118

311sort:文本排序 / 123

312join:按两个文件的相同字段合并 / 127

313uniq:去除重复行 / 129

314wc:统计文件的行数、单词数或字节数 / 131

315iconv:转换文件的编码格式 / 133

316dos2unix:将DOS格式文件转换成UNIX格式 / 134

317diff:比较两个文件的不同 / 135

318vimdiff:可视化比较工具 / 138

319rev:反向输出文件内容 / 139

320tr:替换或删除字符 / 140

321od:按不同进制显示文件 / 143

322tee:多重定向 / 145

323vi/vim:纯文本编辑器 / 147

324老男孩逆袭思想:做Linux运维的多个好处 / 152

第4章 文本处理三剑客 / 153

41grep:文本过滤工具 / 153

42sed:字符流编辑器 / 159

43awk基础入门 / 165

第5章 Linux信息显示与搜索文件命令 / 176

51uname:显示系统信息 / 176

52hostname:显示或设置系统的主机名 / 178

53dmesg:系统启动异常诊断 / 179

54stat:显示文件或文件系统状态 / 181

55du:统计磁盘空间使用情况 / 183

56date:显示与设置系统时间 / 186

57echo:显示一行文本 / 190

58watch:监视命令执行情况 / 193

59which:显示命令的全路径 / 195

510whereis:显示命令及其相关文件全路径 / 196

511locate:快速定位文件路径 / 197

512updatedb:更新mlocate数据库 / 199

513老男孩逆袭思想:新手在工作中如何问问题不会被鄙视 / 200

第6章 文件备份与压缩命令 / 201

61tar:打包备份 / 201

62gzip:压缩或解压文件 / 208

63zip:打包和压缩文件 / 211

64unzip:解压zip文件 / 212

65scp:远程文件复制 / 214

66rsync:文件同步工具 / 216

67老男孩逆袭思想:新手如何高效地提问 / 220

第7章 Linux用户管理及用户信息查询命令 / 222

71 useradd:创建用户 / 222

72usermod:修改用户信息 / 227

73userdel:删除用户 / 229

74groupadd:创建新的用户组 / 230

75groupdel:删除用户组 / 231

76passwd:修改用户密码 / 232

77chage:修改用户密码有效期 / 237

78chpasswd:批量更新用户密码 / 238

79su:切换用户 / 240

710visudo:编辑sudoers文件 / 242

711sudo:以另一个用户身份执行命令 / 244

712id:显示用户与用户组的信息 / 248

713w:显示已登录用户信息 / 249

714who:显示已登录用户信息 / 250

715users:显示已登录用户 / 252

716whoami:显示当前登录的用户名 / 253

717last:显示用户登录列表 / 253

718lastb:显示用户登录失败的记录 / 254

719lastlog:显示所有用户的最近登录记录 / 255

第8章 Linux磁盘与文件系统管理命令 / 257

81fdisk:磁盘分区工具 / 257

82partprobe:更新内核的硬盘分区表信息 / 265

83tune2fs:调整ext2/ext3/ext4文件系统参数 / 266

84parted:磁盘分区工具 / 268

85mkfs:创建Linux文件系统 / 272

86dumpe2fs:导出ext2/ext3/ext4文件系统信息 / 274

87resize2fs:调整ext2/ext3/ext4文件系统大小 / 275

88fsck:检查并修复Linux文件系统 / 278

89dd:转换或复制文件 / 281

810mount:挂载文件系统 / 284

811umount:卸载文件系统 / 288

812df:报告文件系统磁盘空间的使用情况 / 289

813mkswap:创建交换分区 / 293

814swapon:激活交换分区 / 294

815swapoff:关闭交换分区 / 295

816sync:刷新文件系统缓冲区 / 296

第9章 Linux进程管理命令 / 298

91ps:查看进程 / 298

92pstree:显示进程状态树 / 305

93pgrep:查找匹配条件的进程 / 306

94kill:终止进程 / 307

95killall:通过进程名终止进程 / 310

96pkill:通过进程名终止进程 / 311

97top:实时显示系统中各个进程的资源占用状况 / 313

98nice:调整程序运行时的优先级 / 320

99renice:调整运行中的进程的优先级 / 323

910nohup:用户退出系统进程继续工作 / 324

911strace:跟踪进程的系统调用 / 325

912ltrace:跟踪进程调用库函数 / 332

913runlevel:输出当前运行级别 / 334

914init:初始化Linux进程 / 335

915service:管理系统服务 / 335

第10章 Linux网络管理命令 / 338

101ifconfig:配置或显示网络接口信息 / 338

102ifup:激活网络接口 / 343

ifup eth0

103ifdown:禁用网络接口 / 343

ifdown eth0

service network restart(/etc/initd/network restart) 激活整个网络,所有网卡。

104route:显示或管理路由表 / 344

105arp:管理系统的arp缓存 / 350

106ip:网络配置工具 / 351

107netstat:查看网络状态 / 358

108ss:查看网络状态 / 362

109ping:测试主机之间网络的连通性 / 363

1010traceroute:追踪数据传输路由状况 / 366

1011arping:发送arp请求 / 367

1012telnet:远程登录主机 / 369

1013nc:多功能网络工具 / 370

1014ssh:安全地远程登录主机 / 373

1015wget:命令行下载工具 / 376

1016mailq:显示邮件传输队列 / 379

1017mail:发送和接收邮件 / 381

1018nslookup:域名查询工具 / 386

1019dig:域名查询工具 / 389

1020host:域名查询工具 / 393

1021nmap:网络探测工具和安全/端口扫描器 / 394

1022tcpdump:监听网络流量 / 398

第11章 Linux系统管理命令 / 407

111lsof:查看进程打开的文件 / 407

112uptime:显示系统的运行时间及负载 / 411

113free:查看系统内存信息 / 411

114iftop:动态显示网络接口流量信息 / 413

115vmstat:虚拟内存统计 / 415

116mpstat:CPU信息统计 / 419

117iostat:I/O信息统计 / 420

118iotop:动态显示磁盘I/O统计信息 / 423

119sar:收集系统信息 / 425

1110chkconfig:管理开机服务 / 430

1111ntsysv:管理开机服务 / 433

1112 setup:系统管理工具 / 434

1113ethtool:查询网卡参数 / 436

1114mii-tool:管理网络接口的状态 / 437

1119rpm:RPM包管理器 / 443

1120yum:自动化RPM包管理工具 / 446

top命令

第12章 Linux系统常用内置命令 / 450

121Linux内置命令概述 / 450

122Linux内置命令简介 / 450

123Linux常用内置命令实例 / 452

基本linux命令有哪些呢?

1、ls命令

就是 list 的缩写,通过 ls 命令不仅可以查看 linux 文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。

常用参数搭配:

ls -a 列出目录所有文件,包含以开始的隐藏文件

ls -A 列出除及的其它文件

ls -r 反序排列

ls -t 以文件修改时间排序

ls -S 以文件大小排序

ls -h 以易读大小显示

ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来

实例:

(1) 按易读方式按时间反序排序,并显示文件详细信息

ls -lhrt

(2) 按大小反序显示文件详细信息

ls -lrS

(3)列出当前目录中所有以"t"开头的目录的详细内容

ls -l t

(4) 列出文件绝对路径(不包含隐藏文件)

ls | sed "s:^:`pwd`/:"

(5) 列出文件绝对路径(包含隐藏文件)

find $pwd -maxdepth 1 | xargs ls -ld

2、cd 命令

cd(changeDirectory) 命令语法:

cd [目录名]

说明:切换当前目录至 dirName。

实例:

(1)进入要目录

cd /

(2)进入 "home" 目录

cd ~

(3)进入上一次工作路径

cd -

(4)把上个命令的参数作为cd参数使用。

cd !$

3、pwd 命令

pwd 命令用于查看当前工作目录路径。

实例:

(1)查看当前路径

pwd

(2)查看软链接的实际路径

pwd -P

4、mkdir 命令

mkdir 命令用于创建文件夹。

可用选项:

-m: 对新建目录设置存取权限,也可以用 chmod 命令设置;

-p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录。

实例:

(1)当前工作目录下创建名为 t的文件夹

mkdir t

(2)在 tmp 目录下创建路径为 test/t1/t 的目录,若不存在,则创建:

mkdir -p /tmp/test/t1/t

5、rm 命令

删除一个目录中的一个或多个文件或目录,如果没有使用 -r 选项,则 rm 不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。

rm [选项] 文件…

实例:

(1)删除任何 log 文件,删除前逐一询问确认:

rm -i log

(2)删除 test 子目录及子目录中所有档案删除,并且不用一一确认:

rm -rf test

(3)删除以 -f 开头的文件

rm -- -f

6、rmdir 命令

从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限。

注意:不能删除非空目录

实例:

(1)当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除:

rmdir -p parent/child/child11

7、mv 命令

移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。

当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。

实例:

(1)将文件 testlog 重命名为 test1txt

mv testlog test1txt

(2)将文件 log1txt,log2txt,log3txt 移动到根的 test3 目录中

mv llog1txt log2txt log3txt /test3

(3)将文件 file1 改名为 file2,如果 file2 已经存在,则询问是否覆盖

mv -i log1txt log2txt

(4)移动当前文件夹下的所有文件到上一级目录

mv /

8、cp 命令

将源文件复制至目标文件,或将多个源文件复制至目标目录。

注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中,如果不加 -i 参数,则不会提示,而是直接覆盖!

-i 提示

-r 复制目录及目录内所有项目

-a 复制的文件与原文件时间一样

实例:

(1)复制 atxt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖。

cp -ai atxt test

(2)为 atxt 建议一个链接(快捷方式)

cp -s atxt link_atxt

9、cat 命令

cat 主要有三大功能:

1一次显示整个文件:

cat filename

2从键盘创建一个文件:

cat > filename

只能创建新文件,不能编辑已有文件。

3将几个文件合并为一个文件:

cat file1 file2 > file

-b 对非空输出行号

-n 输出所有行号

实例:

(1)把 log2012log 的文件内容加上行号后输入 log2013log 这个文件里

cat -n log2012log log2013log

(2)把 log2012log 和 log2013log 的文件内容加上行号(空白行不加)之后将内容附加到 loglog 里

cat -b log2012log log2013log loglog

(3)使用 here doc 生成新文件

cat >logtxt <<EOF

>Hello

>World

>PWD=$(pwd)

>EOF

ls -l logtxt

cat logtxt

Hello

World

PWD=/opt/soft/test

(4)反向列示

tac logtxt

PWD=/opt/soft/test

World

Hello

10、more 命令

功能类似于 cat, more 会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示。

命令参数:

+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

实例:

(1)显示文件中从第3行起的内容

more +3 texttxt

(2)在所列出文件目录详细信息,借助管道使每次显示 5 行

ls -l | more -5

按空格显示下 5 行。

11、less 命令

less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

常用命令参数:

-i 忽略搜索时的大小写

-N 显示每行的行号

-o <文件名> 将less 输出的内容在指定文件中保存起来

-s 显示连续空行为一行

/字符串:向下搜索“字符串”的功能

字符串:向上搜索“字符串”的功能

n:重复前一个搜索(与 / 或 有关)

N:反向重复前一个搜索(与 / 或 有关)

-x <数字> 将“tab”键显示为规定的数字空格

b 向后翻一页

d 向后翻半页

h 显示帮助界面

Q 退出less 命令

u 向前滚动半页

y 向前滚动一行

空格键 滚动一行

回车键 滚动一页

[pagedown]: 向下翻动一页

[pageup]: 向上翻动一页

实例:

(1)ps 查看进程信息并通过 less 分页显示

ps -aux | less -N

(2)查看多个文件

less 1log 2log

可以使用 n 查看下一个,使用 p 查看前一个。

12、head 命令

head 用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行。

常用参数:

-n<行数> 显示的行数(行数为复数表示从最后向前数)

实例:

(1)显示 1log 文件中前 20 行

head 1log -n 20

(2)显示 1log 文件前 20 字节

head -c 20 log2014log

(3)显示 tlog最后 10 行

head -n -10 tlog

13、tail 命令

用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

常用参数:

-f 循环读取(常用于查看递增的日志文件)

-n<行数> 显示行数(从后向前)

(1)循环读取逐渐增加的文件内容

ping 127001 > pinglog &

后台运行:可使用 jobs -l 查看,也可使用 fg 将其移到前台运行。

tail -f pinglog

(查看日志)

14、which 命令

在 linux 要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:

which 查看可执行文件的位置。

whereis 查看文件的位置。

locate 配合数据库查看文件位置。

find 实际搜寻硬盘查询文件名称。

which 是在 PATH 就是指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果。使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

常用参数:

-n指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

实例:

(1)查看 ls 命令是否存在,执行哪个

which ls

(2)查看 which

which which

(3)查看 cd

which cd(显示不存在,因为 cd 是内建命令,而 which 查找显示是 PATH 中的命令)

查看当前 PATH 配置:

echo $PATH

或使用 env 查看所有环境变量及对应值

15、whereis 命令

whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。whereis 及 locate 都是基于系统内建的数据库进行搜索,因此效率很高,而find则是遍历硬盘查找文件。

常用参数:

-b 定位可执行文件。

-m 定位帮助文件。

-s 定位源代码文件。

-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

实例:

(1)查找 locate 程序相关文件

whereis locate

(2)查找 locate 的源码文件

whereis -s locate

(3)查找 lcoate 的帮助文件

whereis -m locate

我们采用完全符合PKCS[8]系列标准的签名验证算法,并兼容所有符合X509格式的证书,以RSA[6][7]非对称密钥体制为基础来完成对ELF文件代码的签名验证。

为了便于描述,我们引入以下几个基本概念1完全摘要值--指对ELF文件的所有数据以及签名相关数据计算出来的摘要值;2不完全摘要值--指对ELF文件的一部分重要数据(主要是ELF文件头)以及签名相关数。

对ELF文件的签名是通过签名工具完成的,与 *** 作系统核心无关,同时也和平台无关。签名过程完全遵循第二节中所描述的标准和原理。

Linux常用的命令可以分为以下几类:安装和登录命令、文件处理命令、系统管理相关命令、网络 *** 作命令、系统安全相关命令、其它命令。

安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。

文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。

系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。

网络 *** 作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup。

系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。

其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

Linux简介

Linux,全称GNU/Linux,是一套免费使用和自由传播的类Unix *** 作系统,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的 *** 作系统。伴随着互联网的发展,Linux得到了来自全世界软件爱好者、组织、公司的支持。

它除了在服务器方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该 *** 作系统的实现机制,而且可以根据自身的需要来修改完善Linux,使其最大化地适应用户的需要。

Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux不仅仅是被网络运维人员当作服务器使用,甚至当作网络防火墙,这是Linux的一大亮点。

文件和目录 *** 作的基本命令: cat、clear、cmp、cut、diff、du、emacs、fgrep、file、grep、head、ln、less、more、pico、pwd、sort、stat、strings、tail、touch、umask、uniq、vi、wc、whatis

ls:ls [选项|参数] 目录名 eg:#ls -R /etc/>

#问题在于对于数组file_list的引用错误,修改如下:

#!/bin/sh

#Get the file list name and the directory to search

listname=$1

pathname=$2

#read the content of the list line to line and put them into an array

k=0

while read LINE 

do  

file_list[$k]=$LINE 

k=$k+1

done < $listname

 

cd $pathname

 

i=0

j=0

for LINE in "${file_list[@]}"    #问题在于这里对数组的引用

do 

FILE=`find  -name $LINE -print -quit`

if [ -n "$FILE" ];

then

    a[$i]=$FILE

    i=$i+1

else

   b[$j]=$LINE

    j=$j+1

fi

done

echo "found files:"

for i in "${a[@]}"; do

     echo $i

done

echo "missing files:"

for j in "${b[@]}"; do

     echo $j

done

另外补充一点:

数组下标:最好不要使用k=$k+1表达,应该使用((k+1))或者 k=`expr $k + 1`。因为,如果列表文件太多,会引起数组越界,超过系统允许数组下标的最大长度。

希望能够帮助到你,你的好评是我前进的动力,谢谢!

这里以字符串123456为例子,它的md5密文值为:e10adc3949ba59abbe56e057f20f883e

这里以1txt为需要被加密的文件。

一、 用oppnssl md5 加密字符串和文件的方法。

1 oppnssl md5 加密字符串的方法

a手动输入命令及过程如下:

#openssl //在终端中输入openssl后回车。

OpenSSL> md5 //输入md5后回车

123456 //接着输入123456,不要输入回车。然后按3次ctrl+d。

123456e10adc3949ba59abbe56e057f20f883e //123456后面的就是密文了

解释:为何在输入123456后不回车呢?

是因为openssl默认会把回车符当做要加密的字符串中的一个字符,所以得到的结果不同。如果你输入123456后回车,在按2次ctrl+d。得到的结果是:

OpenSSL> md5

123456

f447b20a7fcbf53a5d5be013ea0b15af //因为openssl不忽略回车符导致的

b或者直接用管道命令

# echo -n 123456 | openssl md5 //必须要有-n参数,否则就不是这个结果了。

e10adc3949ba59abbe56e057f20f883e

解释:为何要加-n这个参数?

-n就表示不输入回车符,这样才能得到正确的结果。如果你不加-n,那么结果和前面说的一样为:

f447b20a7fcbf53a5d5be013ea0b15af //因为openssl不忽略回车符导致的

2用openssl加密文件。

#openssl md 5 -in 1txt

##################################################3

Openssl其他相关加密的命令参数:引自:实用命令:利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密 收藏

一 利用openssl命令进行BASE64编码解码(base64 encode/decode)

1 BASE64编码命令

对字符串‘abc’进行base64编码:

# echo abc | openssl base64

YWJjCg== (编码结果)

如果对一个文件进行base64编码(文件名ttxt):

# openssl base64 -in ttxt

2 BASE64解码命令

求base64后的字符串‘YWJjCg==’的原文:

# echo YWJjCg== | openssl base64 -d

abc (解码结果)

如果对一个文件进行base64解码(文件名tbase64):

# openssl base64 -d -in tbase64

二 利用openssl命令进行md5/sha1摘要(digest)

1 对字符串‘abc’进行md5摘要计算:echo abc | openssl md5

若对某文件进行md5摘要计算:openssl md5 -in ttxt

2 对字符串‘abc’进行sha1摘要计算:echo abc | openssl sha1

若对某文件进行sha1摘要计算:openssl sha1 -in ttxt

三 利用openssl命令进行AES/DES3加密解密(AES/DES3 encrypt/decrypt)

对字符串‘abc’进行aes加密,使用密钥123,输出结果以base64编码格式给出:

# echo abc | openssl aes-128-cbc -k 123 -base64

U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= (结果)

对以上结果进行解密处理:

# echo U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= | openssl aes-128-cbc -d -k 123 -base64

abc (结果)

若要从文件里取原文(密文)进行加密(解密),只要指定 -in 参数指向文件名就可以了。

进行des3加解密,只要把命令中的aes-128-cbc换成des3就可以了。

注:只要利用openssl help就可以看到更多的安全算法了。

###############################################

二、 利用php的md5函数加密字符串

#touch aphp //创建aphp文件

#vi aphp //用vi 编辑aphp文件

将<php echo md5(123456); >输入进去后保存

#php aphp //运行aphp文件

显示:e10adc3949ba59abbe56e057f20f883e

三、 利用md5sum命令

A在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。可以用下面的命令来获取md5sum命令帮助 man md5sum

#md5sum –help

有个提示:“With no FILE, or when FILE is -, read standard input”翻译过来就是“如果没有输入文件选项或者文件选项为 - ,则从标砖读取输入内容”,即可以直接从键盘读取字符串来加密。

利用md5sum加密字符串的方法

# md5sum //然后回车

123456 //输入123456然后按两次ctrl+d

显示:

123456e10adc3949ba59abbe56e057f20f883e 红色代表加密后的值

还可以用管道命令:

#echo -n '123123' | md5sum

或者写成md5加密脚本,名字叫md5sh,

将以下内容复制进脚本里:

#!/bin/bash

echo -n $1 | md5sum | awk '{print $1}'

保存后,给脚本执行权限。

#sh md5sh 123456

显示:e10adc3949ba59abbe56e057f20f883e

B其实也可以将文本放入文本文件,然后用md5sum 加密改文本,也可以得到字符串加密的值。过程如下:

#touch atxt

#echo -n 123456 > atxt //将123456写进文本文件,不能丢了 –n参数,避免回车符干扰

#md5sum atxt

显示:e10adc3949ba59abbe56e057f20f883e atxt

ctrl+d有两个含义:

一是向程序发送文件输入结束符EOF。

二是向程序发送exit退出指令。程序收到信号后具体动作是结束输入、然后等待,还是直接退出,那就要看该程序捕获信号后是如何 *** 作的了。

md5sum属于第一个含义。两次strl+d了,第一次读取EOF指令,再次捕获就会当成exit指令。而shell一类的程序,会直接把ctrl+d解析为退出指令。

以上就是关于Linux 命令大全全部的内容,包括:Linux 命令大全、关于LINUX最基本的一些命令、基本linux命令等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9682870.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存