第1周(老王视频)-作业

1、常见Linux的发行版有哪些?并描述不同发行版之间的联系与区别

1)Debian分支(非商业公司维护,灵活,保留linux最好的):

Ubuntu(乌班图,以桌面应用为主,基于Debian)->Mint(桌面漂亮)

Google Chrome OS基于Debian

2)slackware分支

SUSE(基于Slackware,Novell公司)

3)Redhat分支

Fedora(桌面版,面向个人,1,2,3,4,5,6,7,8,9之前由redhat更新,之后由fedora社区发展)

Redhat Enterperise linux(RHEL3,4,5,6,7),Oracle Enterprise Linux基于Redhat

CentOS(Community<社区> enterprese OS,社区版的RHEL)

4)Gentoo分支(未编译,需要编译;也属于发行版)

LFS(Linux From Scratch<起跑线>,需要编译才能使用;不是发行版,是个PDF文档):

GUN/LINUX,BLFS(Byond超越),ALFS(autoinstall),CLFS(交叉编译Cross complie)

5)ArchLinux分支

2、打印显示当前时间,格式是:20181209211008

[root@centos7 ~]#date  +%Y%m%d%H%M%S

20190324152659

[root@centos7 ~]#

3、实现晚上20:30自动关机,并提示用户

shutdown -h 20:30

4、总结历史命令管理以及用法

登录进shell后新执行的命令只会记录在缓存(即内存即history命令列出的)中;这些命令会在用户退出(正常退出,异常断电等不会追加)时“追加”至命令历史文件(~/.bash_history)中

重新登录shell时,会读取命令历史文件(~/.bash_history)中记录的命令

重复前一个命令,有4种方法:

1)重复前一个命令使用上方向键,并回车执行

2)按 !! 并回车执行

3)输入 !-1 并回车执行

4)按 Ctrl+p 并回车执行

!:0 执行前一条“去掉参数的”命令,如(上一条命令为cd xxxxxx):!:0 /etc/passwd

使用键盘上下键查看历史命令过程中,Ctrl + n 显示当前历史中的下一条命令,但不执行(类似键盘上下键查看历史命令的功能,用的不多)

使用键盘上下键查看历史命令过程中,Ctrl + j 执行当前命令(类似键盘上下键查看历史命令并回车的功能,用的不多)

!n 执行history命令输出对应序号n的命令

!-n 执行history历史中倒数第n个命令

 

命令行历史:

!string 重复前一个以“string”开头的命令(命令比较长的时候使用,用的比较多)

!?string 重复前一个包含string的命令(命令比较长的时候使用,用的比较多)

!string:p 仅打印前一个以“string”开头的命令,!而不执行

 

要重新调用前一个命令中最后一个参数:

1)!$ 表示    !*(上一条命令的所有参数)

2)Esc, .(点击Esc键后松开,然后点击 . 键)

3)Alt+ .(按住Alt键的同时点击 . 键),需secureCRT中将options-terminal-emulation-emacs中勾选“Use ALT as meta key”(且下边的send escape for meta key要勾选)

!$:p 打印输出 !$ (上一条命令的最后一个参数)的内容

[root@centos7 ~]#ls /etc/fstab /etc/motd

/etc/fstab  /etc/motd

[root@centos7 ~]#ll !$          注:不带:p

ll /etc/motd

-rw-r--r--. 1 root root 22 Feb 16 19:35 /etc/motd

!*:p 打印输出 !*(上一条命令的所有参数)的内容

[root@centos7 ~]#ls /etc/fstab /etc/motd   

/etc/fstab  /etc/motd

[root@centos7 ~]#ll !*   注:不带:p

ll /etc/fstab /etc/motd

-rw-r--r--. 1 root root 595 Feb 14 18:14 /etc/fstab

-rw-r--r--. 1 root root  22 Feb 16 19:35 /etc/motd

 

命令行历史:

使用键盘up(向上)和down(向下)键来上下浏览从前输入的命令

ctrl-r来在命令历史中搜索命令(逆向reverse-i-search)`’: ctrl+g:从历史搜索模式退出(搜出命令后不想执行时使用)

 

命令history,包括:内存中的历史命令和硬盘(cat ~/.bash_history)中的历史命令

-c: 清空所有命令历史(再次执行history将看不到命令历史,但退出重新登录后再执行history命令历史又从~/.bash_history重新读取过来)

彻底清除历史:先rm ~/.bash_history,再history -c 退出重新登录即可(重新登录后~/.bash_history文件会重新生成)

-d offset: 删除历史中指定的第offset个命令(只删history命令中的,不会删除~/.bash_history文件中的)

n: 显示最近的n条历史(n不带-)

-a: 追加本次会话新执行的命令历史列表至历史文件(从内存追加到文件)

-r: 读历史文件附加到历史列表(从文件追加到内存)

-n: 读历史文件中未读过的行到历史列表(从文件中未读过的行到历史列表,历史列表中已有的不再重复追加)

-w: 保存历史列表到指定的历史文件

-p: 展开历史参数成多行,但不存在历史列表中 即只执行命令并不将命令放入history中,如:history -p `hostname` `uname -a`

-s: 展开历史参数成一行,附加在历史列表后 即只将命令放到history中并不真正执行,如:  history -s 'rm -rf /*'

命令历史相关环境变量(永久生效:export 变量名=值并放入:/etc/profile或~/bash_profile中)

HISTSIZE:命令历史记录的条数(默认1000条)  

HISTFILE:指定历史文件,默认为~/.bash_history

HISTFILESIZE:命令历史文件记录历史的条数(默认1000条) cat /etc/profile|grep HIST HISTSIZE=1000

HISTTIMEFORMAT=“%F %T “ 显示时间(注:%T后有空格,避免时间与具体历史命令连在一块),且exit重新登录后~/.bash_history文件中每条命令前加了#数字(表示1970到执行命令的秒数)

HISTIGNORE=“str1:str2*:… “ 忽略:str1命令(精确匹配),str2开头(模糊匹配)的历史(不记录到history中)

控制命令历史的记录方式:

环境变量:echo $HISTCONTROL

    ignoredups 默认,忽略重复的命令,连续且相同为“重复”

    ignorespace 忽略所有以空白开头的命令  需先设置:HISTCONTROL=ignorespace或export HISTCONTROL=ignorespace,如输入(命令前后空格):[root@centos7 ~]# cat /etc/shadow

    ignoreboth 相当于ignoredups, ignorespace的组合

    erasedups 删除重复(不连续也删除)命令

5、总结Linux帮助用法

1. help 内置命令,如:help history,help cd(type 命令确定命令是内置命令还是外置命令)(使用man 内置命令 获取内置命令的帮助信息,太详细)

2. 外置命令 Comand --help (获取命令的选项信息)

3. Man手册(manual)位置:/usr/share/man,如:man Command或配置文件(命令的帮助或配置文件的帮助),whatis 命令,apropos或man –k关键字(查看命令的用法概述及查看命令帮助在man的哪个章节下)

4. Info命令:获取在线文档(仅在man手册无法获取到足够信息,或想了解程序的开发历史时才使用info),如:info passwd

5. whatis命令(查看“命令”的用法概述及查看命令帮助在man的哪个章节下),apropos或man-k  关键字(查看“包含关键字”的用法概述及查看命令帮助在man的哪个章节下,比whateis匹配的更全),makewhatis(更新whatis及aprops所使用的索引数据库)

6. 很多应用程序都自带有帮助文档:/usr/share/doc(看内核文件时非常关键)

7.主流发行版官方文档(redhat,suse,debian),如:http://www.redhat.com/docs

8.google或baidu

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值