目录
一、解释型语言和编译型语言
1.1 python解释器
1.2 下载软件
1.2.1 wget
1.2.2 curl
1.2.3 区别
二、判断用户是否存在
2.1 id
2.2 cat /etc/passwd
2.2.1 grep
2.3 用户的家目录
2.3.1【用户可以没有家目录】
2.3.2【用户的家目录不在/home】
2.3.3 删除用户
2.3.4 切换用户的注意事项
三、【前提】重定向
3.1 标准输入和标准输出
3.2 设置用户密码
3.3 脚本练习
3.3.1 if和$/p>
3.2.1 shell完成
3.3 输入输出重定向
3.3.1 &>
3.3.2 Linux操作系统的理论知识
3.3.3 交互式硬件设备
3.3.4 终端(w)
3.3.5 利用重定向从一个终端输出到另一个终端
3.3.6 ulimit 查看Linux内核的限制参数
四、练习(补充:kill)
4.1 kill:踢出其他非法登录Linux系统的用户
4.2 ssh远程登录
五、【使用】重定向
5.1 标准正确输出重定向 >
5.2 标准输出追加重定向 >>
5.2.1 复制文件内容粘贴到另一个文件
5.2.2 合并两个文件内容
5.3 标准错误输出重定向 2>
5.4 同时使用1>和2>
5.5 清空文件但不删除
5.6 正确和错误输出重定向
5.7 标准的输入重定向
5.8 here document(即
5.8.1 将键盘输入的内容重定向到一个文件里
5.8.2 生成一个指定内容的文件
5.9 tee
六、设备文件
6.1 /dev/null
6.2 /dev/zero
七、read隐藏输入的密码
一、解释型语言和编译型语言
c语言–编译型:一次性编译成二进制文件,然后执行二进制文件,跟源代码文件无关。
如果c语言源代码文件进行了修改,必须要重新编译,生成新的二进制文件,然后去执行新的二进制文件。
python–解释型:一行一行代码的去解释执行,只要源代码有更新就会重新根据源代码一行一行解释
【c的速度要比python快】
1.1 python解释器
pypy、Cpython(用c语言写的)、Ipython、Jpython、Ironpython
1.2 下载软件
1.2.1 wget
【安装wget】yum install wget -y
wget是Linux下的下载文件,类似于Linux里的迅雷。默认下载的软件存放在当前文件夹下。
【使用】wget + 链接地址
1.2.2 curl
curl是Linux下的字符界面的浏览器,也可以下载软件
【使用】curl -O +链接地址
1.2.3 区别
wget:纯下载软件,需要自己安装
curl:Linux里的浏览器,默认就有,无需安装
二、判断用户是否存在
2.1 id
查看用户的信息,可以用来判断用户是否存在
2.2 cat /etc/passwd
一行一个用户
2.2.1 grep
文本过滤,会根据字符串去匹配内容,如果一行里有匹配的字符串,就将整行输出到屏幕,如果没有找到就不输出。
2.3 用户的家目录
2.3.1【用户可以没有家目录】
useradd -r hanmeimei
-r 新建这个用户属于系统用户,不建立家目录
2.3.2【用户的家目录不在/home】
useradd -d /beijin xiaolihua
如此,用户xiaolihua的家目录就在/beijin
-d 指定家目录的位置,默认是放在/home下,可以放到其他地方
2.3.3 删除用户
userdel -r xiaolihua
删除用户xiaolihua,并且删除用户的家目录
2.3.4 切换用户的注意事项
su – lihua
– 会加载新用户的环境变量,不使用上一个用户的环境变量
三、【前提】重定向
重新定义了他的输出方向。
改变命令的输出方向,本来标准输出往屏幕输出,重定向后命令就输出到文件。
不会影响命令的返回值
3.1 标准输入和标准输出
标准输入(STDIN):standard input ==》接受从键盘输入
给计算机输入内容的方式:键盘输入、语言、图形图像(生物信息识别)、文件
标准输出(STDOUT):standard output ==》都是输出到屏幕
其他输出方式:文件
1.正确的标准输出
2.错误的标准输出
标准输入和标准输出都是人和计算机在沟通交流方式上的确定。
常见的进程都会涉及标准输入和标准输出(系统调用和内核里的内容可能就没有标准输入和标准输出)
3.2 设置用户密码
echo 123456 是在屏幕上输出123456
| 管道符 :是将前面一个命令的标准输出送给后面的一个命令作为标准输入
–stdin 是passwd命令的选项:作用是告诉passwd 管道符 传来的内容是可以作为标准输入使用的
【非交互式设置密码】
【交互式设置密码】
(在编写脚本时,常用非交互式设置密码,给用户设置密码)
3.3 脚本练习
题目:接受用户输入的用户名和密码,帮助新建用户,并且设置密码。
(v2版本)(添加功能)如果用户名存在,就提醒用户重新输入,如果用户名不存在就新建。
可以使用shell或者python
3.3.1 if和$/h3>
1.【if语句的语法】
2.echo $/strong>
输出上一条命令的返回值。为0时,表示执行成功;非0时,表示执行失败。
常见的非0返回值:1,2,127
127 表示命令不存在
1 表示命令执行失败,参数或者选项不对
2 表示命令执行失败,选项不对
3.2.1 shell完成
【需求分析】
接受用户输入:read
新建用户:useradd
设置密码:passwd
脚本名字:create_user_pwd.sh
??shell脚本在执行的时候时从上而下,一条一条执行,中间某条命令执行失败,后面的命令依然会执行。
??python脚本在执行的时候时从上而下,一条一条执行,中间某条命令执行失败,后面的命令不会执行。
【v2版本】
-
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!