Linux常用shell命令大全
第2讲 Linux常用shell命令
使用LINUX虚拟机的快照3
以下文章由影视网收集于提供
实验目的:
掌握Linux常用命令
实验步骤:
一、基本命令
1、立即关机并重启动,执行如下命令:
shutdown -r now
或者reboot
2、立即关机,执行如下命令:
shutdown -h now
或者poweroff
3、等待2分钟关机并重启动,执行如下命令:
shutdown -r 2
4、等待2分钟关机,执行如下命令:
shutdown -h 2
5、使用当前用户的历史命令,执行如下操作:
history
将会显示使用过的每条命令及其序号,可利用序号重复执行该命令。
例如输入!1并回车,将会重复执行第1条历史命令。
也可用上下光标键调出某条历史命令,然后按回车键重复执行。
还可用上下光标键调出某条历史命令,修改后按回车键执行。
6、清除当前用户的历史命令,执行如下命令:
history -c
此时用向上光标键将会调不出任何历史命令。
7、命令提示键<Tab>:输入命令开头一个或几个字母,然后按1次【Tab】键,系统会自动补全能够识别的部分;再按1次【Tab】键,系统显示出符合条件的所有命令供用户选择。
例如输入group后按两次<Tab>键,将会显示以group开头的所有命令。
8、显示内核版本号,执行如下命令:
uname -r
注:内核版本号不同于软件发行版本号。
例如,RHEL 5.4的内核版本号是2.6.18-164.el5,软件发行版本号是5.4。
9、清除屏幕,执行如下命令:
clear
10、显示操作系统时钟,执行如下命令:
date
11、加载光盘到/media,执行如下命令:
mount /dev/cdrom /media
12、卸载光盘,执行如下命令:
umount /dev/cdrom
或者 umount /media
注意:不要在/media或其子目录中执行此命令,否则将会出现“设备忙错误”。
13、查看存储设备,执行如下命令:
fdisk –l
14、加载U盘到/media
mount /dev/sdb1 /media
15、卸载U盘,执行如下命令:
umount /dev/sdb1
或者 umount /media
注意:不要在/media或其子目录中执行此命令,否则将会出现“设备忙错误”。
16 中断shell命令
Ctrl+C
二、文件目录操作命令
1、显示当前的绝对路径,执行如下命令:
pwd
2、改变当前目录,例如执行如下命令:
cd /etc/yum
将会把当前目录改为/etc/yum。
3、回到当前目录的父目录,执行如下命令:
cd ..
4、创建目录,例如执行如下命令:
mkdir /usr/tigger
5、删除目录,例如执行如下命令:
rmdir /usr/tigger
注:使用rmdir命令时,待删除的目录必须为空。
6、列出目录中的内容,例如执行如下命令:
ls /
7、列出目录中的所有内容(包括隐藏文件或称为点文件) ,例如执行如下命令:
ls /root -a
将会看到以“.”开头的文件名,它们称为点文件。
若用命令“ls /root”是看不到它们的。
8、用长格式列出目录中的内容,执行如下命令:
ls /boot -l
注:在Linux中,若某命令有几个开关,可将这几个开关合并在一起。
例如,命令ls -a -l 与命令ls -al或者ls -la作用相同。
9、创建空文件,例如执行如下命令:
touch /a.dat
10、复制文件,例如执行如下命令:
cp /etc/host.conf /root
将会把目录/etc中的文件host.conf复制到目录/root中,文件名不变。
11、复制整个子目录(不改变目录名),例如执行如下命令:
cp -r /usr/include /root
将会把整个子目录/usr/include(不改变目录名)复制到目录/root中。
12、复制整个子目录(改变目录名),例如执行如下命令:
cp -r /usr/include /root/include2
将会把整个子目录/usr/include复制到目录/root中,并将目录名从include改为include2。
13、移动文件或给文件改名,例如执行如下命令:
给文件改名:
mv /root/host.conf /root/myfile
移动文件:
mv /root/myfile /
移动文件同时改名:
mv /myfile /root/myfile2
14、删除文件,例如执行如下命令:
rm /root/myfile2
按y键确认。
rm -f /a.dat
不需确认。
15、删除非空目录,例如执行如下命令:
mkdir /root/mysub /root/mysub/new
rmdir /root/mysub
系统提示目录非空
rm -rf /root/mysub
系统无错误提示。
ls /root
将看到目录/root中已经没有mysub目录。
16、分屏显示文件内容,例如执行如下命令:
more /etc/services
按空格键显示下一屏,按q键返回命令行状态。
注:more作为管道命令时,可与其它一些命令结合,例如:
ls /etc |more
history |more
17、显示文件内容,例如执行如下命令:
cat /etc/services
18、合并文件,例如执行如下命令:
cat /etc/resolv.conf /etc/yum.conf >/b.dat
执行如下命令进行验证:
ls -l /b.dat
显示该文件长度为814字节。
也可用两条命令实现同样的功能:
cat /etc/resolv.conf >/c.dat
此时该文件长度为26字节。
cat /etc/yum.conf >>/c.dat
此时该文件长度为814字节。
注:>和>>是重定向符号,若重定向的文件已经存在,则使用>时将用新内容覆盖原来的内容,而使用>>时将用新内容添加到原来内容的后面。
三、vi编辑器
创建或修改某一文本文件,例如执行如下命令:
vi /b.dat
vi编辑器有2种模式:命令模式和编辑模式。
vi启动后进入的是命令模式,在命令模式中按i键就可以进入编辑模式。
在编辑模式中按<Esc>键就可以返回到命令模式。
按i键后开始编辑。
编辑完成后,按<Esc>键返回到命令模式,输入:wq后按回车键保存文件后退出;或者输入:q!后按回车键不存盘退出。
若要删除光标所在行,则先返回到命令模式,再按两次d键。
若要删除从光标所在行开始向下的若干行,例如5行,则先返回到命令模式,按5键,再按两次d键。
删除的内容同时进入vi
缓冲区。
若要将vi缓冲区的内容粘贴到当前位置的后面,则先返回到命令模式,再按p键。
若要撤消最近一次的操作,则先返回到命令模式,再按u键。
重复按u键可以撤消最近的多次操作。
若要将光标所在行复制到vi缓冲区,则先返回到命令模式,再按两次y键。
若要将从光标所在行开始向下的若干行(例如5行)复制到vi缓冲区,则先返回到命令模式,按5键,再按两次y 键。
若要从当前位置开始向下查找某一字符串,例如HOSTNAME,则先返回到命令模式,再输入
/HOSTNAME后按回车键。
若要继续向下查找,则再输入/后按回车键。
vi在编辑某一个文件时,会生成一个临时文件,这个文件以“.”开头并以“.swp”结尾。
正常退出该文件自动删除,如果意外退出例如忽然断电,该文件不会删除。
此时只需手动删除该文件即可。
:set nu 显示行号
:setnonu 取消行号
四、软件包安装命令
1、查看所有已安装的软件包,执行如下命令:
rpm -qa |more
2、查看已安装的名称中包含某个字符串的所有软件包,例如执行如下命令:
rpm -qa |grep net
3、验证所有已安装的软件包,执行如下命令:
rpm -Va
注:该命令会列出所有自从包安装后系统和用户做过修改的文件。
4、查看已安装的某个软件包的用途,例如执行如下命令:
rpm -qi net-tools-1.60-37.EL4.8
5、查看系统中某个文件属于哪个软件包,例如执行如下命令:
rpm -qf /sbin/ifconfig
结果应显示该文件属于net-tools-1.60-102.el6.i686
6、安装某个软件包,例如执行如下命令:
rpm -ivh ***********.rpm
注:-v为显示信息选项,-h为显示进程选项。
以上文章由808影视网收集与提供。
linux系统常用命令
linux系统常用命令
``` ls:列出当前目录下的所有文件及子目录 cd:切换目录 mkdir:创建目录 rm:删除文件或目录 mv:移动文件或重命名文件 cat:显示文件内容 echo:输出字符串man:显示命令手册 find:查找文件 grep:搜索文件中的字符串 sort:对文件中的行排序 tail:显示文件末尾部分 head:显示文件开头部分 more:分屏显示文件内容chmod:改变文件权限 chown:改变文件所有者 ps:显示正在执行的进程 kill:杀死进程 df:查看磁盘使用情况du:显示文件大小 top:显示正在运行的进程 mount:挂载设备 umount:卸载设备 ```。
linux shell powershell 语法对照
Linux Shell和PowerShell是两种不同的命令行界面,它们的语法和功能也有所不同。
以下是一些常见的Linux Shell和PowerShell语法对照:文件路径:Linux Shell:使用正斜杠(/)作为路径分隔符,例如:/home/user/documents PowerShell:使用反斜杠(\)作为路径分隔符,例如:C:\Users\User\Documents命令提示符:Linux Shell:命令提示符通常为,例如:username@hostname:PowerShell:命令提示符通常为PS,例如:PS C:\Users\User>命令帮助:Linux Shell:使用man命令查看命令的帮助文档,例如:man lsPowerShell:使用Get-Help查看命令的帮助文档,例如:Get-Help Get-ChildItem管道操作符:Linux Shell:使用竖线(|)作为管道操作符,例如:ls | grep txtPowerShell:使用管道符号(|)作为管道操作符,例如:Get-ChildItem | Where-Object { $_.Extension -eq ".txt" }变量赋值:Linux Shell:使用等号(=)进行变量赋值,例如:name="John"PowerShell:使用赋值符号()进行变量赋值,例如:name = "John"引号的使用:Linux Shell:可以使用单引号(')或双引号(")来引用字符串,例如:echo 'Hello World' 或echo "Hello World"PowerShell:也可以使用单引号(')或双引号(")来引用字符串,例如:echo 'Hello World' 或echo "Hello World"通配符和正则表达式:Linux Shell:使用通配符(*、?、[])和正则表达式进行模式匹配和筛选,例如:ls *.txt 或grep '[0-9]' file.txtPowerShell:也支持通配符(*、?、[])和正则表达式进行模式匹配和筛选,例如:Get-ChildItem -Filter *.txt 或Select-String -Pattern '[0-9]' -Path file.txt这只是一些常见的Linux Shell和PowerShell语法对照示例,实际上还有许多其他的差异和特性。
Linux的常用基本命令
Linux的常⽤基本命令⼀、基本命令1.1 关机和重启1.2 帮助命令⼆、⽬录操作命令2.1 ⽬录切换 cd2.2 ⽬录查看 ls [-al]2.3 ⽬录操作【增,删,改,查】2.3.1 创建⽬录【增】 mkdir2.3.2 删除⽬录或⽂件【删】rm2.3.3 ⽬录修改【改】mv 和 cp2.3.4 搜索⽬录【查】find三、⽂件操作命令3.1 ⽂件操作【增,删,改,查】3.1.1 新建⽂件【增】touch3.1.2 删除⽂件【删】 rm3.1.3 修改⽂件【改】 vi或vim3.1.4 ⽂件的查看【查】tail head3.2 权限修改四、压缩⽂件操作4.1 打包和压缩4.2 解压五、查找命令5.1 grep5.2 find5.3 locate5.4 whereis5.5 which六、su、sudo6.1 su6.2 sudo七、系统服务⼋、⽹络管理8.1 主机名配置8.2 IP 地址配置8.3 域名映射九、定时任务指令crontab 配置9.1 命令格式9.2 配置说明、实例⼗、其他命令10.1 查看当前⽬录:pwd10.2 查看进程:ps -ef10.3 结束进程:kill10.4 ⽹络通信命令:10.5 配置⽹络10.6 重启⽹络10.7 切换⽤户10.8 关闭防⽕墙10.9 修改⽂件权限10.10 清屏10.11 vi模式下快捷键⼀、基本命令1.1 关机和重启shutdown -h now ⽴刻关机shutdown -h 5 5分钟后关机poweroff ⽴刻关机shutdown -r now ⽴刻重启shutdown -r 5 5分钟后重启reboot ⽴刻重启1.2 帮助命令--help命令shutdown --help:ifconfig --help:查看⽹卡信息man命令(命令说明书)man shutdown注意:man shutdown打开命令说明书之后,使⽤按键q退出⼆、⽬录操作命令2.1 ⽬录切换 cdcd / 切换到根⽬录cd .. 切换到上⼀级⽬录cd ~ 切换到home⽬录cd - 切换到上次访问的⽬录2.2 ⽬录查看 ls [-al]ls 查看当前⽬录下的所有⽬录和⽂件ls -a 查看当前⽬录下的所有⽬录和⽂件(包括隐藏的⽂件)ls -l 或 ll 列表查看当前⽬录下的所有⽬录和⽂件(列表查看,显⽰更多信息)ls /dir 查看指定⽬录下的所有⽬录和⽂件如:ls /usr2.3 ⽬录操作(增,删,改,查)2.3.1 创建⽬录(增) mkdirmkdir logs 在当前⽬录下创建⼀个名为logs的⽬录mkdir /usr/logs 在指定⽬录下创建⼀个名为logs的⽬录2.3.2 删除⽬录或⽂件(删)rmrm ⽂件删除当前⽬录下的⽂件rm -f ⽂件删除当前⽬录的的⽂件(不询问)删除⽬录:rm -r aaa 递归删除当前⽬录下的aaa⽬录rm -rf aaa 递归删除当前⽬录下的aaa⽬录(不询问)注意:rm语法对⽬录和⽂件和压缩包等都可执⾏删除操作2.3.3 ⽬录修改 mv 和 cp重命名⽬录命令:mv 当前⽬录新⽬录例如:mv aaa bbb 将⽬录aaa改为bbb注意:mv语法对⽬录和⽂件和压缩包等都可执⾏重命名的操作剪切⽬录命令:mv ⽬录名称⽬录的新位置⽰例:将/usr/tmp⽬录下的aaa⽬录剪切到 /usr⽬录下⾯ mv /usr/tmp/aaa /usr注意:mv语法对⽬录和⽂件和压缩包等都可执⾏剪切操作拷贝⽬录命令:cp -r ⽬录名称⽬录拷贝的⽬标位置 -r代表递归⽰例:将/usr/tmp⽬录下的aaa⽬录复制到 /usr⽬录下⾯ cp /usr/tmp/aaa /usr注意:cp命令可以拷贝⽬录还可以拷贝⽂件,压缩包等,拷贝⽂件和压缩包时不⽤写-r递归2.3.4 搜索⽬录 find命令:find ⽬录参数⽂件名称⽰例:find /usr/tmp -name 'a*' 查找/usr/tmp⽬录下的所有以a开头的⽬录或⽂件三、⽂件操作命令3.1 ⽂件操作3.1.1 新建⽂件touch命令:touch ⽂件名⽰例:在当前⽬录创建⼀个名为aa.txt的⽂件 touch aa.txt3.1.2 删除⽂件 rm命令:rm -rf ⽂件名3.1.3 修改⽂件vi或vim基本上vi可以分为三种状态,分别是命令模式(command mode)、插⼊模式(Insert mode)和底⾏模式(last line mode)1) 命令⾏模式command mode)常⽤命令:(1)进⼊编辑模式:i o a (2)进⼊底⾏模式:: (3)查找:/字符(4)控制光标移动:↑,↓,j(5)删除当前⾏:dd2) 编辑模式(Insert mode)只有在Insert mode下,才可以做⽂字输⼊,按「ESC」键可回到命令⾏模式。
实用linux命令大全(详细)
linux命令(重新整理)Linux基本操作命令首先介绍一个名词“控制台(console)”,它就是我们通常见到的使用字符操作界面的人机接口,例如dos。
我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令,例如dos命令就是控制台命令。
我们现在要了解的是基于Linux操作系统的基本控制台命令。
有一点一定要注意,和dos命令不同的是,Linux的命令(也包括文件名等等)对大小写是敏感的,也就是说,如果你输入的命令大小写不对的话,系统是不会做出你期望的响应的。
模式切换1、由字符到图型#startx或#init 52、由图形到字符#logout或init 33、注销#logout或exit或ctrl+d4、关机#poweroff或init 0或shutdown now或halt -p5、重启#reboot或init 6或shutdown -r now获得帮助#help提供内部命令的帮助#man或info提供外部命令的帮助。
如果你的英文足够好,那完全可以不靠任何人就精通linux,只要你会用man。
Man实际上就是察看指令用法的help,学习任何一种UNIX类的操作系统最重要的就是学会使用man这个辅助命令。
man是manual(手册)的缩写字,它的说明非常的详细,但是因为它都是英文,看起来非常的头痛。
建议大家需要的时候再去看man,平常吗,记得一些基本用法就可以了。
ls这个命令就相当于dos下的dir命令一样,这也是Linux控制台命令中最为重要几个命令之一。
ls最常用的参数有三个:-a -l -F。
ls -aLinux上的文件以“.”开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示一般文件名外,连隐藏文件也会显示出来。
ls -l(这个参数是字母L的小写,不是数字1)这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到ls -l这个指令。
linux shell 运算符
linux shell 运算符Linuxshell运算符是在shell命令行界面下进行数学运算的工具。
它可以用来进行简单的数学计算,比如加减乘除、比较大小和逻辑运算等,为用户提供了方便和快捷的计算方式。
本文将会介绍几个常用的 Linux shell 运算符。
1. 基本运算符Linux shell 运算符中最基本的运算符是加减乘除等数学运算符。
在命令行界面下输入数学表达式,例如 3+2 或 5*6,使用 echo 命令输出结果即可。
例如:$ echo $((3+2))5$ echo $((5*6))30其中,双括号内的表达式会被 shell 解释器解析并计算出结果,然后 echo 命令会输出计算结果。
2. 比较运算符另一种常见的 Linux shell 运算符是比较运算符。
比较运算符可以用来比较两个数的大小关系,判断它们是否相等等。
常见的比较运算符有:- -eq:等于- -ne:不等于- -gt:大于- -lt:小于- -ge:大于等于- -le:小于等于这些运算符也可以用在 if 语句中,判断某个条件是否成立。
例如:if [ $a -eq $b ]thenecho 'a 等于 b'fi3. 逻辑运算符逻辑运算符在 Linux shell 中也很重要。
它们可以用来组合多个条件,判断复杂的逻辑关系。
常见的逻辑运算符有:- !:逻辑非- -o:逻辑或- -a:逻辑与例如:if [ ! $a -eq $b -o $a -lt $b ]thenecho 'a 不等于 b 或者 a 小于 b'fi上述代码中,逻辑或运算符 -o 表示只要其中一个条件成立就可以执行后面的代码。
总结一下,Linux shell 运算符是一个非常有用的工具,可以方便地进行数学计算和逻辑判断。
在日常使用中,可以结合 if 语句、for 循环等语句,编写出更加复杂的脚本,提高工作效率。
常用的linux 命令
常用的linux 命令
Linux是一种流行的操作系统,具有强大的命令行界面。
在这里,我们将探讨常用的Linux命令。
1. ls:列出当前目录中的文件和文件夹。
2. cd:更改当前目录。
3. pwd:显示当前目录的路径。
4. mkdir:创建新目录。
5. touch:创建新文件或更新现有文件的时间戳。
6. cp:复制文件或目录。
7. mv:移动文件或目录。
8. rm:删除文件或目录。
9. cat:查看文件内容。
10. less:以交互方式查看大型文件。
11. grep:在文件中搜索特定字符串。
12. echo:将文本输出到终端或文件中。
13. chmod:更改文件或目录的权限。
14. chown:更改文件或目录的所有者。
15. ps:显示当前运行的进程。
这些命令是Linux中最常用的,但还有很多其他命令可供使用。
掌握这些命令是了解Linux操作系统的第一步。
- 1 -。
Linux命令行与shell脚本编程大全(第4版)
第5章理解shell
5.1 shell的类型 5.2 shell的父子关系 5.3理解外部命令和内建命令 5.4小结
第6章 Linux环境变量
6.1什么是环境变量 6.2设置用户自定义变量 6.3删除环境变量 6.4默认的shell环境变量 6.5设置PATH环境变量 6.6定位系统环境变量 6.7数组变量 6.8小结
第10章文本编辑器
10.1 vim编辑器 10.2 nano编辑器 10.3 Emacs编辑器 10.4 KDE系编辑器 10.5 GNOME编辑器 10.6小结
第11章构建基础脚本 第12章结构化命令
第13章更多的结构化 命令
第14章处理用户输入
第15章呈现数 据
第16章脚本控 制
第11章构建基础脚本
第24章编写简单的脚本实用工具
24.1备份 24.2删除账户 24.3系统监控 24.4小结
第25章井井有条
25.1理解版本控制 25.2设置Git环境 25.3使用Git提交文件 25.4小结
A.2常见的bash命 令
A.1内建命令
A.3环境变量
B.1 sed编辑 器
B.2 gawk程序
作者介绍
Linux命令行与shell脚本编程 大全(第4版)
读书笔记模板
01 思维导图
03 读书笔记 05 目录分析
目录
02 内容摘要 04 精彩摘录 06 作者介绍
思维导图
本书关键字分析思维导图
命令行
脚本
脚本
书
编程 学习
实战
教程 小结
脚本
文件
处理
版
第章
基础
命令
变量
演练
模式
linuxshell字符串操作详解(长度,读取,替换,截取,连接,对比,删除,位置)
linuxshell字符串操作详解(长度,读取,替换,截取,连接,对⽐,删除,位置)1.Linux shell 截取字符变量的前8位实现⽅法有如下⼏种:1. expr substr “$a” 1 82. echo $a|awk ‘{print substr(,1,8)}’3. echo $a|cut -c1-84. echo $5. expr $a : ‘\(.\\).*’6. echo $a|dd bs=1 count=8 2>/dev/null2.按指定的字符串截取(1)第⼀种⽅法:从左向右截取最后⼀个string后的字符串${varible##*string}从左向右截取第⼀个string后的字符串${varible#*string}从右向左截取最后⼀个string后的字符串${varible%%string*}从右向左截取第⼀个string后的字符串${varible%string*}“*”只是⼀个通配符可以不要请看下⾯的例⼦:$ MYVAR=foodforthought.jpg$ echo ${MYVAR##*fo}rthought.jpg$ echo ${MYVAR#*fo}odforthought.jpg(2)第⼆种⽅法:${varible:n1:n2}:截取变量varible从n1开始的n2个字符,组成⼀个⼦字符串。
可以根据特定字符偏移和长度,使⽤另⼀种形式的变量扩展,来选择特定⼦字符串。
试着在 bash 中输⼊以下⾏:$ EXCLAIM=cowabunga$ echo ${EXCLAIM:0:3}cow$ echo ${EXCLAIM:3:7}abunga这种形式的字符串截断⾮常简便,只需⽤冒号分开来指定起始字符和⼦字符串长度。
3.按照指定要求分割:⽐如获取后缀名ls -al | cut -d “.” -f2⼩结:shell对应字符串的处理⽅法很多,根据需求灵活选择。
在做shell批处理程序时候,经常会涉及到字符串相关操作。
linux系统的常用命令及其在后端运维中的应用
linux系统的常用命令及其在后端运维中的应用Linux是一种开源的操作系统,广泛应用于服务器端的运维管理工作中。
Linux系统有许多常用命令,这些命令在后端运维中发挥着重要的作用。
本文将介绍一些常用的Linux命令及其在后端运维中的应用。
1. ls命令:ls命令用于列出目录或文件的详细信息。
在后端运维中,我们可以使用ls命令来查看目录中的文件或子目录,以便进行进一步的操作。
比如,我们可以使用"ls -l"命令来显示目录中文件的详细信息,包括文件权限、所有者、文件大小等。
2. cd命令:cd命令用于切换当前工作目录。
在后端运维中,我们经常需要切换到不同的目录来进行操作,比如进入/var/log目录查看系统日志文件,或者进入/etc目录查看配置文件。
3. cp命令:cp命令用于复制文件或目录。
在后端运维中,我们经常需要备份文件或目录,以防止数据丢失。
使用cp命令可以将文件或目录复制到指定的位置,以便进行备份。
4. mv命令:mv命令用于移动文件或目录。
在后端运维中,我们经常需要将文件或目录移动到其他位置,比如将一个已下载的文件移动到指定的目录下。
5. rm命令:rm命令用于删除文件或目录。
在后端运维中,我们经常需要清理无用的文件或目录,以释放存储空间。
使用rm命令可以删除指定的文件或目录。
6. touch命令:touch命令用于创建空文件或更新文件的访问时间。
在后端运维中,我们经常需要创建临时文件或更新文件的访问时间,以方便管理文件。
7. mkdir命令:mkdir命令用于创建目录。
在后端运维中,我们经常需要创建新的目录来存储文件或临时数据。
使用mkdir命令可以创建指定的目录。
8. grep命令:grep命令用于在文件中查找指定的字符串。
在后端运维中,我们经常需要查找特定的日志信息或配置项。
使用grep命令可以快速定位到指定的内容。
9. ps命令:ps命令用于查看系统中运行的进程信息。
Linux中通过Shell对文件中指定行进行增加、删除、追加、替换
Linux中通过Shell对文件中指定行进行增加、删除、追加、替换https:///cgy8919/article/details/100007671一、在某行(指具体行号)前或后加一行内容#第4行末尾追加一行,内容为testsed -i 'N;4atest' test.txt#第4行行首追加一行,内容为testsed -i 'N;4itest' test.txt#匹配到test字段的行行首插入一行find . -name test.txt|xargs sed -i '/test/i <!--'#匹配到test字段的行行末插入一行find . -name test.txt|xargs sed -i '/test/a -->'#所有行首增加sed -i 's/^/ABC/' test.txt#所有行尾添加sed -i 's/$/XYZ/' test.txt#第5行添加文件a.txt的内容sed -i '5 r a.txt' test.txt#oooo行文件a.txt的内容sed -i '/oooo/r a.txt' 5.txt二、删除操作#删除指定行,例如第5行sed -i '5 d' test.txt#删除首行sed -i '1d' test.txt#删除末行sed -i '$d' test.txt#删除空行sed -i '/^$/d' test.txt#剔除空格sed -i 's/[ ]*//g' test.txt#删除车符sed -i 's/^M//g' test.txt#删除指定字段的下一行sed -i '/test/{n;d}' test.txt #匹配到test字段#删除指定字段的上一行sed -i -e :a -e '$!N;s/.*n(.*test)/1/;ta' -e 'P;d' test.txt #匹配到test字段三、其他操作#将所有的行合并成一行,并用指定字符分割sed ':a;N;$!ba;s/\n/,/g' test.txt更多操作,请man sed示例请参考:/m0_37886429/article/details/79034190四、处理以下文件内容的命令awk '/^ +/{p++}/^?/{t=s=0;v++;k[v]=p;p=0;next}!t&&!/^[0-9]/{s++;a[s]=a[s]?a[s]"\t"$0:$0;}/^[0-9]+/{m[++q]=$0;if($0>n) n=$0}END{for(i=1;i<=n;i++) {print a[i];if(i<=v) {t=t?t"\t"m[i]:m[i];d=d?d"\t?":"\n?"}}print t,d}' 文件名执行效果:文件内容(截取部分数据,好多内容都是):每个问号之间都是文本内容,格式如上图所示扩展:用php程序处理这个文件<?php$i = 1;foreach(explode('?',file_get_contents('ab.txt')) as $loop){$loop = trim($loop);if( !$loop ) continue;$cards = array();foreach(explode("\n",$loop) as $line){if( preg_match('/(\d+)\s([\d\w]+)/',$line,$m) ){$count = intval($m[1]);$card = trim($m[2]);$cards[$card] = $count;}}$key = ''.implode(' ',array_keys($cards)).'';$val = implode(' ',$cards);// $sql = "replace into c2030($key) value($val);\n";$sql = "$key\n$val\n";echo "$sql";$i++;}————————————————sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法sed命令行格式为:sed [选项] ‘命令’ 输入文本sed [-nefri] ‘command’ 输入文本常用选项:-n∶使用安静(silent)模式。
