printf ‘%7i\\t s\\t s\\t s\\t \\n ‘ `history` 练习二:sed工具
72) 从ftp上下载文件godisagirl 73) 删除godisagirl文件的第二行。
cd /tmp;vi godisgirl
nl godisagirl |sed ‘2d’或者sed ‘2d’ godisagirl|nl
74) 删除godisagirl文件的第二行到末尾所有行
nl godisgirl |sed ‘2,$d’或者sed ‘2,$d’ godisagirl|nl
75) 删除godisagirl文件的最后一行
nl godisgirl |sed ‘$d’或sed ‘$d’ godisagirl|nl
76) 删除godisagirl文件所有包含god的行
sed ‘/god/ d’ godisagirl|nl
77) 在第9行后面加入两行字符:第一行really?,第二行,yes!yes!
nl godisagirl |sed ‘9a really? \\ >yes!yes!’
(注意这里的引号必须一个一个输入,否则在用转义字符”\\”的时候就会出错)
78) 把第9,10行替换成god is a boy,
nl godisagirl|sed ‘9,10c god is a boy’
79) 在整行范围内把girl替换为boy
nl godisagirl | sed ‘s/girl/boy/g’
80) 如果某一行开头的god被替换成venus,就打印它
sed ‘s/^god/venus/p’ godisagirl|nl
81) 把9到19行中以god开头的字符替换成good
sed ‘9,19s/^god/good/g’ godisagirl|nl
82) 打印从第五行开始到第一个包含god的行之间的所有行
sed -n ‘5,/god/p’ godisagirl|nl
83) 使用-e选项,第一条命令删除1至5行,第二条命令用man替换
girl
sed –e ‘1,5d’ godisagirl|sed -e ‘s/ girl/ man/g’ godisagirl
84) 显示第8行的“history”字符
cat godisagirl |grep 'history'|sed 's/^.*cause//g'| sed 's/will.*$//g' 练习三:shell脚c本初步
85) 在家目录下新建目录script
mkdir script
86) 编写第一个shell脚本,命名为sh01,并存放在/root/script目录中,
脚本执行后要求在屏幕上显示当前用户的的用户名、家目录和uid,
cd /script
vi sh01.sh
#!/bin/bash #Program:
# This program is used to show \#history:
#2010/12/8 ZhangQianQian First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH
echo \echo \
echo \exit 0
87) 以2-3种方式来执行该脚本
(1)Sh sh01.sh
(2)Chmod a+x sh01.sh;sh sh01.sh (3) echo $PATH;
PATH=$PATH:/root/script或者PATH=“$PATH”:/root/script sh sh01.sh
(4)source sh01.sh(容易导致关闭)
88) 编写第一个shell脚本,命名为sh02,并存放在/root/script目录中,
要求执行后,打印一行提示“Please input your name:\,要求用户输入,然后再次打印一行提示“Please input your sex: \要求用户输入,最后在屏幕上显示姓名和性别。
#!/bin/bash #Program
# This program is used to show the user's name and the user's sex #History
#2010/12/8 ZhangQianQian
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/tmp/scripts export PATH
read -p \read -p \
if [ $usersex == \
echo -e \echo -e \
elif [ $usersex == \
echo -e \echo -e \
elif [ $usersex != \echo \fi 或者
#!/bin/bash #Program:
# This Program is used to show the user's name and sex #History:
#2010/12/08 ZhangQianQian
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH
read -p \read -p \
if [ \echo \echo \exit 0 fi
if [ \echo \echo \exit 0 fi
echo \
实验十四 帐号与身份管理
上机实验内容: 练习一:
89) 新建一个用户组g1,并设置其gid为800 Groupadd -g 800
g1
90) 改变用户组g1的gid为801,用户组名为g2
Groupmod -g 801 -n g2 g1
91) 设置用户组密码 Gpasswd g2
92) 新建一个用户账号user1,并设置该帐号的uid为550,用户的家目
录为/tmp/user1,初始用户组为g2,并加入用户组user
Useradd -u 550 -d /tmp/user1 -g g2 -G user user1
93) 查看/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow关于新
增用户user1的信息
Grep user1 /etc/passwd /etc/shadow /etc/group /etc/gshadow
94) 用root为用户user1创建密码
Passwd user1
95) 观察/etc/shadow文件中的密码栏
Grep user1 /etc/shadow
96) 切换用户为user1,并且切换环境设置,此时再改变user1的密码
Su -l user1
Passwd
97) 查询user1支持的所有用户组
groups
98) 切换其有效用户组为user
newgrp user groups
99) 切换回root用户,并且切换环境设置
su -
100)
改变user1用户设置账号有效期为2010-12-31,默认的登陆
shell为/bin/csh
Usermod -e “2010-12-31” -s /bin/csh user1
101)
锁定user1,并观察文件/etc/shadow中密码栏的变化
Usermod -L user1 Grep user1 /etc/shadow
102)
解锁user1,并观察文件/etc/shadow中密码栏的变化
Usermod -U user1 Grep user1 /etc/shadow
103)
删除用户组g2(观察删除是否成功,为什么?)
Groupdel g2
(无法删除因为他是 user1的初始用户组)
104)
删除user1及其家目录
Userdel -r user1