5.2.2:基础命令的操作。
一.显示日期与事件的命令:date。
1.date。
2.date +%Y/%m/%d显示的是:2018/3/8。
3.date +%H:%M显示的是:当前时间。
二.显示日历的命令:cal。
1.cal显示的是当前日期。
2.cal 2018显示的是:2018年的所有月份的情况。
3.cal 3 2018显示的是想要的日历。
三.简而好用的计算机:、:bc。
1.输入 bc 后直接进行运算。(bc默认仅输出整数,所以输入10/100时输出的是0)。
2.quit从计算机中退出进入命令页面。
5.2.3:重要的热键【Tab】,【ctrl】-c,【ctrl】-d
1.【Tab】:ca 【Tab】【Tab】:输出全部开头为ca的命令。
2.ls -al ~/.bash【Tab】【Tab】:以.bash为开头的文件会被显示出来。
3.【Ctrl】-c:先按着【Ctrl】,在按下c键,是组合键。该功能:终端目前程序。比如输入find / 此时会出现很多内容,按下该命令就会令程序中断。
4.【Ctrl】-d:键盘输入结束(end of file,eof,end of input)的意思。
5.3:Linux系统的在线求助man(manual) page 与 info page。
了解:直接输入两次【tab】按键:查看总共有多少命令可以用。
5.3.1:man page。
1.man date:查询date的用法和相关参数。(按q退出man命令)。
2.除了这个可以查询之外,还有哪一个可以查询呢?
首先,按空格可以向下翻页;
使用【page up】(向上翻页)【page down】(向下翻页)来翻页。
3.如果知道某些关键字的话,可以输入/word来主动查找关键字(光标会自动移动到等待输入查找的字符串上)。
4.【home】:去到第一页;【end】:去到最后一页;/word:向下查询word;?word:向上查询word。(光标会自动移动到该位置)。
补充:要重复查询某个字符串的时候,可以使用n或N来操作。
5.man -f man:取得与man相关的更多信息。如果出现man(7)就表示有一个man(7)的说明文件存在。
6.man 1 man;man 7 man:分别取出man page 里面关于1和7的相关数据。
7.man -k man:只要含有man关键字的就将它取出来。(当使用“man -f 命令”时,man只会找到数据中的左边那个命令的完整名称,如果还想找的是“关键字”则可以使用此命令)。
8.与man page有关的两个命令:
whatis:相当于man -f。
apropos:相当于man -k。
注意:要使用以上两个命令,必须创建whatis数据库才行。需要以root的身份执行如下的命令:
makewhatis。(记相关命令的方法:lp(line print),然后由man lp开始去找相关的说明,再以lp【tab】【tab】找到任何以lp为开头的命令。所以,努力找man吧)。
5.3.2:info page。
1.info page:与man page有相同之处,但不同的是into page将文件数据拆成一个一个的段落,每个段落用自己的页面来撰写,并且在各个页面中还有类似网页的“超链接”来跳到各个不同的页面中,每个独立的页面也被称为一个节点。此命令又叫做命令行模式的网页显示数据。(要查询的目标数据的说明文件必须要以info的格式来写成才能够使用info的特殊功能,比如下一条)。
2.info info:从第一行可以知道节点的内容/来源/相关链接,可以直接通过N/P/U去到下一个,上一个,上一层的节点,另外,光标也可以在下面的菜单上移动。(按enter可以进入该节点)。
3.info page的相关命令:
B:移动到info界面的第一个节点。
E:移动到info界面的最后一个节点。
S:在info page界面当中进行查询。
H:显示求助菜单。
?:命令一览表。
5.3.3:奇其他有用的文件(documents)。
1./usr/share/doc/centos-release-notes-5.3/:查询centos的相关信息。(使用的话要创建目录,否则会提示找不到,另外可以通过第二点来查看版本、内核)。
2.cat /etc/issue:版本。 uname -r:内核。
5.4:超简单文本编辑器:nano
1.nano text.txt:打开一个文件。进入文件之后,可以进行几个简单的命令:
【ctrl】-G:取得在线帮助。
【ctrl】-X:离开nano文件,若有修改过文件会提示是否需要保存。
【ctrl】-O:保存文件,若你有权限的话就可以保存文件了。
【ctrl】-R:从其他文件读入数据,可以将某个文件的内容贴在本文件中。
【ctrl】-W:查询字符串。
【ctrl】-C:说明目前光标所在行的行数与列数等信息。
【ctrl】- :可以直接输入行号,让光标迅速移动到该行。
【alt】-Y:校正语法功能开启或关闭。
【alt】-M:可以支持鼠标来移动光标的功能。
注意:可以在nano text。txt的页面下按下【ctrl】-G或者【F1】来显示出完整的nano内命令说明了。
输入数据后选择保存离开,在最后一行会出现指数、M,其中指数代表的是【ctrl】,M代表的是【alt】。
5.5:正确的关机方法。
1.查看用户系统的使用状态。
who:查看目前谁在线。
netstat -a:看网络的联机状态。且要看后台执行的程序可以执行“ps -aux”这个命令。
2.正确的关机命令使用。
sync:将数据同步写到硬盘中。注意:虽然shutdown/reboot/halt等命令均已经在关机前进行了sync这个工具得调用,不过,多做几次总是比较放心。
halt、poweroff:关机。
power -f:直接关机回到主页面。
reboot、shutdown -r now(必须在root条件下进行,关于进入root权限:打开终端 输入sudo -i然后输入当前用户的密码;或者打开终端输入su root或su然后输入root用户密码;这两种方式都能获取root权限。或者用root用户登陆系统。root用户只能存在一个。其他用户只能通过刚说的两个方法获取root权限。):重启。
shutdown -t:过几秒后关机。-k:不是真的要关机,只是发出去警告信息。-r:在将系统的服务停掉后就关机。-h:将系统的服务停掉后,立即关机。-n:不经过init程序,直接以shutdown的功能来关机。-f:关机并开机之后,强制略过fsck的磁盘检查。-F:系统重启之后,强制进行fask的磁盘检查。-c:取消已经在进行的shutdown命令内容。
注意:shutdown可以依据目前已经启动的服务来逐次关闭各服务后才关机;至于halt却能够在不理会目前系统状况下,进行硬件关机的特殊功能。
5.5.4:切换执行等级。
1.run level 0:关机。
2.run level 3:纯命令行模式。
3.run level 5:含有图形界面模式。
4.run level 6:重启。
注意:切换各种模式,可以使用init这个命令来处理,如 init 0(只能在root权限下才能使用)。
5.6.1文件系统错误的问题。
1.如果根目录没有损毁:
输入fsck/ dev/sda7(fsck为文件系统检查的命令,/dev/sda7为错误的分区)然后屏幕会显示“clear【Y/N】”,直接输入Y就行了。修复完成后,用reboot重启。
2.如果根目录损毁了:
//将硬盘拔掉。接到另一台linux系统的计算机上,不要挂载(mount)该硬盘,然后以root的身份执行“fsck/dev/sdb1”。
//先用live cd光盘开机,然后使用fsck去修复原本的根目录。
5.7重点回顾。
默认是6个终端,tty1-tty6,2. 在 Linux 系统中, VBird 与 vbird 是否为相同的文件?
如果是以命令行模式(不是命令行窗口那种)登录Linux,可使用ctrl+alt+Fn切换控制台,Fn为F1-F6。其中f7为图形界面的使用。
两个不同的文件。
Linux和windows在文件命名上完全不一样,Linux中的文件名是区分大小写的,只要记住这一点,你就知道这两个是不一样的文件。
附加:3. 我想在今天的1:30让系统自动关机,要怎么做?
shutdown –h 1:30。
4.Linux中Tab键命令功能及用法
//只需输入文件或目录名的前几个字符,然后按TAB键,如无相重的,完整的文件名立即自动在命令行出现;如有相重的,再按一下TAB键,系统会列出当前目录下所有以这几个字符开头的名字。
//在命令行下,只需输入例如m,再连续按两次TAB键,系统将列出所有以m开头的命令,(包括自定义的Bshell命令函数),对查找某些记不清楚的命令特有用。例如输入ftp,将查到ftp,ftpcount,ftpwho,ftpshut等本不熟悉的命令。
5.Linux下如何强制中断一个程序的执行?(利用按键,而不是kill命令)
//CTRL+C键,这相当于发送Terminal信息到当前的程序。比如下图,在通过find命令查找名称带3b76的文件,可以直接按ctrl+c键结束掉循环。
//CTRL+Z键,这是暂停键,暂停程序执行。可以再通过fg命令返回重新运行被暂停的程序。比如下图,在mysql中执行命令,这时候希望查询一下当前目录下的文件,就可以按CTRL+Z,然后执行完ls命令后,再执行fg命令即可回到mysql中。
//CTRL+D键,发送exit信号,退出程序,比CTRL+C要温柔一些,比如下图,退出phython3.5就可以按CTRL+D键。
以下为对man的深层解释:Linux命令 man 所用的帮助文件是放在哪里的?
在/usr/share/man下。
使用方法:
1.man的查询后面的数字含义:
1)用户在shell换机中可以操作的指令或可执行文件
2)系统核心可乎叫的函数与工具
3)一些常用的函数(function)与函数库(library),大部分为c的函数库(libc)
4)硬件文件说明,通常是/dev/的文件
5)配置文件或者是某些档案的格式
6)游戏(games)
7)惯例与协议等,例如linux文件系统、网络协议、ASCIIcode等说明
8)系统管理员可用的命令
9)跟kernel有关的文件
2.man page大致分为一下部分:
NAME:简单命令、数据名称说明
SYNOPSIS:简短的命令语法(sysntax)简介
DESCRIPTION:较为完整的说明,需要认真阅读
OPTION:针对SYNOPSIS中列举的所有可用选项说明
COMMANDS:当这个软件在执行的时候,可用在此软件中使用命令
FILES:这个软件或数据所使用或参考或链接到的文件
SEE ALSE:可以参考的,与这个命令有关的其他说明
EXAMPLE:一些可以参考的范例,这个最好用
BUGS:是否有相关的bug
3.man中的相关操作
ctrl + F或者Page Down:向下翻页
ctrl + B或者Page Up:向上翻页
gg到第一行
GG到最后一行
/start:能在整手册中搜索start相关字符,使用n查找下一个,使用N查找上一个j,k与vi中一样使用,j向下一行,k向上一行 d下翻半页 u上翻半页 h获取man使用帮助 q退出man
4.man的配置文件man.conf
MANPATH /usr/man :设置man文件存放的路径
MANPATH /opt/*/man:来设置
5.man -f 命令: 可以查出系统中命令的其他man帮助,如:man man,系统会提示有1,1p,7,5等不同的帮助
man -k 命令的不拼写:这个有助于完整命令使用。
6.2.1Linux文件属性。
1.以root身份登录Linux,执行ls -al(ls是list的意思,重点在显示文件的文件名与相关属性,而al则表示列出所有的文件详细的权限与属性)。,
6.2.2如何该表文件属性与权限。
1.chgrp:改变文件所属用户组。
chgrp users .bashrc(以。bashrc文件为例子):然后使用命令ls -al .bashrc查看可知道文件的用户组被改成了users。
2.chown:改变文件所有者。
chown bin .bashrc:然后使用命令ls -al .bashrc查看可知道所有者变成了bin。
chown root:root .bashrc:将文件的用户组和所有者改回为root。
chown .sshd .bashrc:单纯的修改所属用户组。(小数点的用途)
3.将。bashrc文件复制成为。bashrc_test文件名,并且要给bin这个人,可以这样做:
输入以下这两个命令:cp 。bashrc 。bashrc_test
ls -al .bashrc*
3.chmod:改变文件的权限。
Linux文件的基本权限有九个,分别是owner,group,others三种身份还有各自的read,write,execute权限。各权限的分数对照表如下:
r:4
w:2
x:1
owner=rwx=4+2+1=7
group=rwx=4+2+1=7
others=___=0+0+0=0
chmod 777 .bashrc:使。bashrc文件的_rw_r__r__变成_rwxrwxrwx。
chmod u=rwx,go=rx, .bashrc:使文件的权限变成_rwxr_xr_x。
chmod a+w .bashrc:增加文件的每个人均可写入的权限。(_rwxrwxrwx)
chmod a-x .bashrc:去掉全部人的可执行权限。
cd /tmp:切换工作目录到tmp。
madir testing:创建新目录。(mkdir /oldboy /oldboy/test:可以连续创建两个目录。)
mkdir -p /oldboy/test/a/b/c:-p代表循环创建,可以连续创建好几个目录。
touch testing/testing:创建新的文件。
su -vbird:切换身份变为普通用户。(exit可以再变回root身份)。
rm testing:删除testing文件。
6.3.3绝对路径与相对路径
1. .:代表当前的目录,也可以使用./来表示。
2. ..:代表上一层目录,也可以用../来表示。
3. cd/var/spool/mail
cd../cron
先进入/var/spool/mail/目录,在进入到/var/spool/cron/目录内。
6.3.4centos的查看
1.uname -r:查看实际的内核版本。
2.lsb_release -a:查看LSB的版本。
6.4重点回顾.
6.5本章练习。
FHS的标准官方文件:http://proton.pathname.com/fhs/
关于Journaling(日志式)文章的相关说明:http://www.linuxplanet.com/linuxplanet/reports/3726/1/
7.1.2目录的相关操作
1. .:代表此层目录。
2. ..:代表上一层目录。
3. _:代表前一个工作目录。
4. ~:代表“目前用户身份”所在的主文件夹。
5.~account:代表account这个用户的主文件夹(account是一个账号名称)。
6. cd:切换目录。
cd ~vbird:去vbird这个主文件夹,即/home/vbird
cd ~:回到自己的主文件夹。
cd:同上。
cd ..:渠道目前的上层目录,即是/root的上层目录的意思。
cd -:回到刚才的那个目录。
cd /var/spool/mail:这个就是绝对路径的写法,直接指定要去的完整路径名称。
cd ../mqueue:由/var/spool/mail到/var/spool/mqueue的写法。
7. pwd:显示当前目录。
pwd 【-p】:其中的-p意思是显示当前的路径,而非使用链接路径。
8. mkdir:新建一个新目录。
mkdir 【-mp】:
-m:配置文件案的权限,直接设置,不需要看默认权限。
例子:mkdir -m 711 test2(使用ls -l查看):改变权限为drwx--x--x。
-p:帮助你直接将所需要的目录递归创建起来。
9. rmdir:删除一个空目录。
rmdir 【-p】:
-p:连同上层“空的”目录也一起删除。
例子:输入rmdir test1,因为尚有内容,所以无法删除,但是输入rmdir -p test1/test2/test3/tsst4就会删除test1.
注意:目录需要一层一层的删除才行,而且被删除的目录里边必定不能存在其他的目录或文件。
7.1.3关于执行文件路径的变量:¥PATH
7.2文件与目录管理。
7.2.1查看文件与目录:ls
当执行ls时,显示默认的只有非隐藏文件的文件名,以文件名进行排序及文件名代表的颜色显示。
ls -al ~:将文件夹下的所有文件列出来。
ls -alF --color=never ~:不显示颜色,但在文件名未显示出该文件代表的类型。
ls -al --full-time ~:完整呈现文件的修改时间。
7.2.2复制,删除与移动.
注意:在默认的条件下,cp的源文件与目的文件的权限是不同的,目的文件的所有者通常会是命令操作者本身。·
7.2.2取得路径的文件名与目录名称。
1. basename /etc/sysconfig/network:取得最后的文件名。
2. dirname /etc/sysconfig/network:取得目录名。
7.3文件内容查阅
cat:由第一行开始显示文件内容。
tac:从最后一行开始显示,可以看出tac是cat的倒写形式。
nl:显示的时候,顺便输出行号。
more:一页一页的显示文件内容。
head:只看头几行。
tail:只看结尾几行。
od:以二进制的方式读取文件内容。
7.3.1直接查看文件内容。
1.cat:
-A:相当于-vET的整合参数,可列出一些特殊字符,而不是空白而已。
-b:列出行号,仅针对非空白行做行号显示,空白行不标行号。
-E:将结尾的段行字符$显示出来。
-n:打印出行号,连同空白行也会有行号,与-b的参数不同。
-T:将【Tab】按键以²I显示出来。
-v:列出一些看不出来的特殊字符。
cat /etc/issue:查看/etc/issue这个文件的内容。
cat -n /etc/issue:乘上题加印行号。
cat -b /etc/issue:乘上,但是不编排空白行号。
cat -A /etc/xinetd.conf:将文件的内容完整显示出来。
2.tac(反向列示):
3.nl(添加行号打印):
7.4.3文件特殊权限:SUID SGID SBID(等待后续)
7.4.4:查看文件类型:file:通过这个命令,我们可以简单的判断这个文件的格式如何。
7.5.1which(寻找“执行文件”)
1.which -a command:
-a:将所有由PATH目录中可以找到的命令均列出,而不是第一个被找到的命令名称。
当使用which ifconfig这个命令时,用root可以找到正确的执行文件名,而用一般身份账号却找不到,因为which是根据用户设置的PATH变量内的目录去查找可执行文件的,所以,不同的PATH设置内容所找到的命令当然不一样了,因为/bin不在vbird的PATH中,也是理所当然的。
当使用which cd这个命令时,因为cd是bash内置的命令,但是which默认是查找PATH内所规范的目录,所以当然一定找不到。
7.5.2文件名的查找。
whereis(寻找特定文件):
-b:只找二进制格式的文件。
-m:只找在说明文件manual路径下的文件。
-s:只找source源文件。
-u:查找不在上述三个选项当中的其他特殊文件。
(which一般用户找不到的ifconfig却可以让whereis找到,是因为系统真的有ifconfig这个文件,但是用户的PATH并没有加入/sbin。)
whereis -m passwd:只找出跟passwd有关的“说明文件”文件名。
locate:
-i:忽略大小写的差异。
-r:后面可接正则表达式的显示方式。
locate passwd:找出系统中所有与passwd相关的文件名。
注意:locate寻找的数据是由已创建的数据库/var/lib/mlocate/里面的数据所查到的,所以不用直接去硬盘当中访问数据。
updatedb:根据/etc/updatedb.conf的设置去查找系统硬盘内的文件名,并更新/var/lib/mlocate内的数据库文件。
locate:依据/var/lib/mlocate内的数据库记载,找出用户输入的关键字文件名。
find:
find 【PATH】 【option】 【action】 参数:
-mtime n:n为数字,意义为在n天之前的“一天之内”被更改过的文件。
-mtime +n:列出在n天之前(不含n天本身)被更改过的文件名。
-mtime -n:列出在n天之内(含n天本身)被更改过的文件名。
-newer file:file为一个存在的文件,列出比file还要新的文件名。
find / -mtime 0:从现在开始到24小时前,有被改动内容的文件都会被列出来。
find / -mtime 3:3天前的24小时内有被改动内容的文件都会被列出来。
find /etc -newer /etc/passwd:寻找/etc下面的文件,如果文件日期比/etc/passwd新就列出。(-newer用在分辨两个文件的新旧关系是很有用的。)
find /home -user vbird:将属于某个用户的所有文件都找出来。
find / -nouser:找出那些不太正常的文件。