linux学习9 运维基本功-Linux常用基础命令实战应用
一、文件系统知识回顾
1、Linux文件系统:
a、文件名称严格区分字符大小写
b、文件可以使用除/以外任意字符
c、文件名长度不能超过255个字符
d、以.开头的文件为隐藏文件:
. :当前目录
.. :当前目录的上一级目录
2、linux目录
a、工作目录:working directory
b、家目录
二、常用命令
1、pwd:printing working directory
显示工作目录
2、cd :change directory
cd [/PATH/TO/SOMEDIR]
cd:切换回家目录:
注意:bash中,~表示家目录
cd ~:切换回自己的家目录
cd ~USERNAME:切换至指定用户的家目录
[root@localhost ~]# cd ~gentoo [root@localhost gentoo]# pwd /home/gentoo
cd -:在上一次所在目录与当前目录之间来回切换
相关的环境变量
$PWD:当前工作目录
$OLDPWD:上一次的工作目录
[root@localhost /]# cd /application/test1/ [root@localhost test1]# echo $PWD /application/test1 [root@localhost test1]# cd /application/ [root@localhost application]# echo $PWD /application [root@localhost application]# echo $OLDPWD /application/test1
3、ls:list,列出指定目录下的内容
a、ls -a:显示所有文件,包括隐藏文件。
[root@localhost application]# ls -a . .. test1
b、ls -A:显示除.和..的所有文件
c、ls -l: --long,长格式列表,即显示文件的详细属性信息。
[root@localhost test1]# ls -l /application/test1/1.txt -rw-r--r-- 1 root root 4 Dec 12 05:45 /application/test1/1.txt
-:文件类型,有-,d,b,c,l,s,p
rw-r--r--:
rw-:文件属主的权限
r--:文件属组的权限
r--:其它用户(非属主,属组)的权限
1:数字表示文件被硬链接的次数
root:文件的属主
root:文件的属组
4:表示文件的大小,单位是字节
Dec 12 05:45:文件最后一次被修改的时间
d、ls -h :--human-readable:对文件大小做单位换算,换算后的结果可能为非精确值
e、ls -d:只看目录自身属性而非其内部的文件列表
[root@localhost test1]# ls -ld /application/test1/ drwxr-xr-x 2 root root 19 Dec 12 05:45 /application/test1/
f、ls -lr:reverse,逆序
g、ls -R:recursive,递归显示
4、cat:concatenate,文件文本查看工具
[root@localhost test1]# cat /etc/fstab [root@localhost test1]# cat /etc/issue \S Kernel \r on an \m
[root@localhost test1]# cat /etc/fstab /etc/issue # # /etc/fstab # Created by anaconda on Wed Oct 24 05:18:55 2018 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/centos-root / xfs defaults 0 0 UUID=7b808363-4f9d-4f63-a543-28928b32c184 /boot xfs defaults 0 0 /dev/mapper/centos-swap swap swap defaults 0 0 \S Kernel \r on an \m
a、cat -n :给显示的文本行统一编号
[root@localhost test1]# cat -n /etc/issue 1 \S 2 Kernel \r on an \m 3
b、cat -E:显示行结束符$
5、tac:文本文件查看工具,文件内容是逆序的
[root@localhost test1]# tac /etc/issue Kernel \r on an \m \S [root@localhost test1]# tac /etc/fstab /dev/mapper/centos-swap swap swap defaults 0 0 UUID=7b808363-4f9d-4f63-a543-28928b32c184 /boot xfs defaults 0 0 /dev/mapper/centos-root / xfs defaults 0 0 # # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # Accessible filesystems, by reference, are maintained under '/dev/disk' # # Created by anaconda on Wed Oct 24 05:18:55 2018 # /etc/fstab #
6、file 查看文件内容类型
[root@localhost test1]# file /etc/issue /etc/issue: ASCII text [root@localhost test1]# file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=c5ad78cfc1de12b9bb6829207cececb990b3e987, stripped
7、echo :echo [SHORT-OPTION]... [STRING] 回显
a、echo -n :不进行换行
[root@localhost /]# echo -n "hello word" hello word[root@localhost /]#
b、echo -e:让转义符生效
[root@localhost /]# echo "hello \n word" hello \n word [root@localhost /]# echo -e "hello \n word" hello word
\n:换行
\t:制表符
c、其中单引号和双引号都可以使用
单引号:强引用,变量引用不执行替换
双引号:弱引用,变量引用会被替换
注意:变量引用的正规符号为 ${name}
[root@localhost /]# echo '$SHELL' $SHELL [root@localhost /]# echo "$SHELL" /bin/bash
8、关机或重启命令
a、shutdown -h :即halt,马上关机
b、shutdown -r: 即reboot,重启
c、shutdown -c :即cancel,取消关机操作
d、shutdown -k:不关机和重启等,只是显示相应的信息,表示逗你玩
e、shutdown now:马上关机
f、shutdown hh:mm:几点几分后关机
[root@localhost /]# shutdown 06:45 Shutdown scheduled for Thu 2019-12-12 06:45:00 CST, use 'shutdown -c' to cancel. [root@localhost /]# Broadcast message from root@localhost.localdomain (Thu 2019-12-12 06:35:55 CST): The system is going down for power-off at Thu 2019-12-12 06:45:00 CST! [root@localhost /]# [root@localhost /]# Broadcast message from root@localhost.localdomain (Thu 2019-12-12 06:36:00 CST): The system is going down for power-off at Thu 2019-12-12 06:45:00 CST!
g、shutdown +m 几分钟后关机,如果是shutdown +0 表示马上关机,和shutdown -h很像
[root@localhost /]# shutdown +10 Shutdown scheduled for Thu 2019-12-12 06:45:03 CST, use 'shutdown -c' to cancel. [root@localhost /]# Broadcast message from root@localhost.localdomain (Thu 2019-12-12 06:35:03 CST): The system is going down for power-off at Thu 2019-12-12 06:45:03 CST!
h、shutdown -r +10 "hello everyone":shutdown命令执行后他会自动发起wall信给所有终端用户,我们可以定义wall内容
[root@localhost /]# shutdown -r +10 "hello every we will reboot after 10 minites" Shutdown scheduled for Thu 2019-12-12 06:43:31 CST, use 'shutdown -c' to cancel. [root@localhost /]# Broadcast message from root@localhost.localdomain (Thu 2019-12-12 06:33:31 CST): hello every we will reboot after 10 minites The system is going down for reboot at Thu 2019-12-12 06:43:31 CST!
9、wall:向每一个终端都发送信息
10、date
a、显示日期时间:date [OPTION]... [+FORMAT],一般显示时间用如下命令。
[root@localhost /]# date "+%F %T" 2019-12-12 06:46:44 [root@localhost /]# date "+%Y-%m-%d %H:%M:%S" 2019-12-12 06:47:49
%s:表示时间戳,即1970年1月1日0点0分0秒(即unix元年,即unix诞生的时期)到你此刻执行命令时经过的秒数
[root@localhost /]# date +%s 1576104690
b、设定日期时间:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
格式为 date 月日小时分钟年.秒,比如将系统时间改成2019年12月10日8点8分8秒
[root@localhost /]# date 121008082019.08 Tue Dec 10 08:08:08 CST 2019
11、clock,Linux系统启动时从硬件读取时间信息和日期,读取完成以后就不再与硬件相关联。我们date命令看到的是系统时钟,clock命令是查看硬件时钟。
12、hwclock,也表示硬件时钟,和clock一样,可以看到他就是clock的软连接
[root@localhost /]# file /usr/sbin/clock /usr/sbin/clock: symbolic link to `hwclock'
a、hwclock -s: --hctosys,即将硬件时钟写入系统时钟,即以硬件为准,把系统调整为与硬件时间相同
b、hwclock -w: --systohc,即将系统时钟写入硬件时钟,即以系统为准,把硬件时间调整为与系统时钟相同
13、cal,日历。显示指定月份或年的日历。
a、cal 2019:显示年的日历
b、cal 12 2019:显示2019年12月的日历