shell编程

Posted lijun522

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell编程相关的知识,希望对你有一定的参考价值。

(1)

passwd为密码文件,保存用户账户的基本信息

shadow为影子化了的密码文件,包含系统账户的密码信息和可选的年龄信息

group为用户组文件,是系统管理员对用户和用户组管理的文件

gshadow为影子化了的组文件,包含影子化了的组文件

(2)

id,显示用户id和组id

id -u,显示用户id

id -u root,显示root的用户id,为0

id -u lj,显示lj的用户id

(3)

1、

which python,查找系统目录下的python文件

whereis python,通过文件索引数据库查找含python的文件

locate python,搜索/var/lib数据库下的含python文件

find /usr/bin -name python,通过直接搜索硬盘的方式查找在指定目录下名字为python的文件

2、

grep -n -E ‘root|lj|^user*‘:/etc/passwd,在/etc/passwd目录下查找以root或cy为行首的重复零次以上、必须出现在行首的行

grep -n -E ‘ [[:digit:]] ‘ /etc/passwd,在 /etc/passwd目录下查找含有纯数字的行

grep -n -E ‘ [[:alpha:]] ‘ /etc/passwd,在 /etc/passwd目录下查找含有纯字母的行

grep -n ‘[0-9]\\{4,\\}‘ /etc/group,在/etc/group目录下查找含有纯数字4位以上的行

3、

sudo apt install gimp,安装gimp

which gimp,查找gimp的位置

sudo apt remove gimp,卸载gimp

which gimp,再次查找已经找不到gimp的位置了

4、

ls -dl /root --time-style=long-iso,在/root目录下显示文件目录信息,详细信息,时间按完整的ios时间格式显示

ls -dl /root --time-style=long-iso | cut -d‘ ‘ -f1,8,以空格为分隔符,截取上一条指令中的第一和第八个域

5、

ls -l --time-style=long-iso,列出文件的详细信息,时间设置为long-iso格式

ls -l --time-style=long-iso -t,列出文件的详细信息,时间设置为long-iso格式,按时间由近到远排序

ls -l --time-style=long-iso -t -r,列出文件的详细信息,时间设置为long-iso格式,按时间由远到近排序

6、

ls /usr/share/man,显示/usr/share/man目录下的文件

ls /usr/share/man | grep man[1-8],显示/usr/share/man目录下的文件搜索man1~man8

ls /usr/share/man/man1,显示/usr/share/man/man1目录下的文件

file /usr/share/man/man1/ls.1.gz,显示ls.1.gz的位置和具体信息

mkdir ~/temp; cp /usr/share/man/man1/ls.1.gz ~/temp,根目录下创建temp文件夹,把ls.1.gz复制到temp下

cd ~/temp; ls,转到temp目录下,查看所有文件目录

sudo gzip -d ls.1.gz; ls,解压并查看

7、

ls –l /home | grep "^d" | wc –l,在home目录下查找以d开头的行,并统计行数

8、

sudo adduser user7,创建用户user7

ls /home | tee users | wc -l,在home目录下查找用户名,并统计行数

(4)

1、

技术分享图片

2、

技术分享图片

3、

技术分享图片

4、

技术分享图片

技术分享图片

技术分享图片

(5)

1、

cp /etc/apt/sources.list t1; less t1,/etc/apt/sources.list 是包管理工具 apt 所用的记录软件包仓库位置的配置文件,保存了ubuntu软件更新的源服务器的地址

2、

sed -e "s/#.*//g" t1,sed命令是利用script来处理文本文件

3、

sed -e "s/#.*//g" t1 | awk ‘{if (length != 0) print $0}‘

4、

tail -5 /etc/passwd | awk -F: ‘{print $1}‘

5、

tail -5 /etc/group | tee t2

awk ‘BEGIN{print "file t2"} {print "line" NR ":" $0} END {print "over"}‘ t2,awk是一种处理文本文件的语言,是一个强大的文本分析工具

(6)

curl是Linux下一个很强大的http命令行工具

wget是一个下载文件的工具

(1)

1、

read用于从键盘读取变量值,11n代表有11位

2、

将专业号和文件名重定向到t1,t1作为前面的命令输出,然后再作为命令输入

总结与体会

虚拟机安装后总是报错,一开始的命令到都还能去使用,但是vim从一开始的课上就提示不能安装了,重装了几次系统,换了别人的iso包后问题仍没有解决好,vim编辑器的使用只能暂且先搁置一下了

以上是关于shell编程的主要内容,如果未能解决你的问题,请参考以下文章

Shell脚本编程

linux12shell编程 --> shell基础01

Shell编程Shell中多分支case条件语句

Shell编程Shell中for循环while循环until循环语句

Shell编程Shell中for循环while循环until循环语句

1shell编程(shell脚本)_理解编程和变量