bash特性
命令补全
[ root@qls ~]
useradd userdel usermod usernetctl users
选项补全
参数补全
[ root@qls ~]
sysconfig/ sysctl.conf sysctl.d/ systemd/ system-release system-release-cpe
Ctrl键+c
Ctrl键+d
Ctrl键+l
Ctrl键+a
Ctrl键+e
Ctrl键+u
Ctrl键+k
Ctrl键+y
Ctrl键+w
Ctrl键+方向键
delete
Ctrl键+r
Ctrl键+z
Ctrl键+s
Ctrl键+q
esc键+.
!!
!ls
选项:
-c
-d
-w
[ root@qls ~]
[ root@qls ~]
PING baidu.com ( 39.156.69.79) 56( 84) bytes of data.
64 bytes from 39.156.69.79 ( 39.156.69.79) : icmp_seq= 1 ttl= 128 time= 29.8 ms
64 bytes from 39.156.69.79 ( 39.156.69.79) : icmp_seq= 2 ttl= 128 time= 30.8 ms
^C
--- baidu.com ping statistics ---
3 packets transmitted, 2 received, 33% packet loss, time 2004ms
rtt min/avg/max/mdev = 29.849/30.346/30.844/0.527 ms
[ root@qls ~]
[ root@qls ~]
alias cp= 'cp -i'
alias egrep= 'egrep --color=auto'
alias fgrep= 'fgrep --color=auto'
alias grep= 'grep --color=auto'
alias l.= 'ls -d .* --color=auto'
alias ll= 'ls -l --color=auto'
alias ls= 'ls --color=auto'
alias mv= 'mv -i'
alias rm= 'rm -i'
alias which= 'alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
查看命令的帮助信息
man
help
[ root@qls ~]
Usage: ss [ OPTIONS ]
ss [ OPTIONS ] [ FILTER ]
-h, --help this message
info
http://man.linuxde.net
http://liunx.web3.xin
http://linux.51yip.com
关机和重启的命令
关机
shutdown -h 0
shutdown -h 1
shutdown -h 11:00
shutdown -c
poweroff
halt
-p
init 0
重启
shutdown -r 0
shutdown -r 1
shutdown -r 11:00
reboot
init 6
注销
logout
Ctrl键+d
exit
显示ip地址的命令
ip
[ root@qls ~]
[ root@qls ~]
[ root@qls ~]
[ root@qls ~]
ifconfig
[ root@qls ~]
[ root@qls ~]
hostname
[ root@qls ~]
fe80::52f8:a673:eea3:dc47%eth0 fe80::e6c7:9516:7898:2bcb%eth1 10.0.0.100 172.16.1.100
[ root@qls ~]
10.0.0.100 172.16.1.100
文件管理
目录结构
一切以根为顶点的目录
/bin
/usr/bin
/sbin
/usr/sbin
/boot
/dev
/dev/cdrom sr0
/dev/random
/dev/zero
/dev/pts/
/dev/sd*
/dev/stderr
/dev/stdin
/dev/stdout
/dev/null
/etc
/etc/sysconfig/network-scripts/ifcfg-eth*
/etc/hostname
/etc/resolv.conf
/etc/fstab
/etc/sysconfig/selinux
/etc/motd
/etc/hosts
/home
/root
/lib
/lib64
lib -> usr/lib
lib64 -> usr/lib64
/media
/mnt
/opt
/proc
/run
/srv
/sys
/tmp
/usr
/usr/local
/var
/var/run
/var/log
/var/log/messages
/var/log/secure
路径的定位
linux中一个点和两个点是什么意思?
.
..
什么是绝对路径,什么是相对路径?
以根为开头的路径就是绝对路径,以~开头也是绝对路径
不是以根开头的路径就是相对路径
[ root@qls ~]
[ root@qls /etc/sysconfig]
文件管理的基础命令
cd
cd /
cd .
cd ..
cd ~
cd
cd -
pwd
tree
选项:
-a
-d
-f
-F
-L
ls
选项:
-a
-l
-d
-i
-h
-F
-S
-t
-r
-1
mkdir
选项:
-p
-v
-m
{ }
mkdir oldboy{ a.. z}
mkdir oldboy{ 1.. 10}
mkdir old{ frank,tank,egon}
touch
1.在一个路径下,不能出现同名的文件,会改变原文件的时间戳
2.使用{ } ,创建多个文件,区分大小写。
cp
选项
-r
-p
-d
-t
-a = -pdr
-i
mv
选项
-f
-t
-i
rm
选项
-f
-r
-i
别名
[ root@qls ~]
[ root@qls ~]
rm command bny -rf /opt/
命令练习题
1.如果我在当前在/目录下,之后执行了以下操作,请告诉我,最后我所在的目录位置
cd /etc/sysconfig/
cd ..
cd ..
cd -
cd ~
cd ..
/ 或 /home
2.当前用户是root用户,当前所在位置是/usr/local ,输入cd命令后,当前所在目录是哪里?
/root ~
3.显示当前所在位置信息
pwd
4.批量创建oldboy01,oldboy02,.. .oldoby05这几个目录
mkdir oldboy{ 01.. 05}
5.显示/oldboy 下面所有文件(包含隐藏文件)的详细信息
ls -la
6.在/oldboy目录下创建以你名字的目录。(已知oldboy目录不存在,请用一条命令实现)
mkdir -p /oldboy/frank
7.在你名字的目录下面创建两个文件,分别为test.txt,test.log
touch /oldboy/frank/test.{ txt,log}
8.把test.txt文件移动到/tmp目录下面
mv /oldboy/frank/test.txt /tmp
9.把test.log文件重命名为test.sh
cd /oldboy/frank/
mv test.log test.sh
10.删除test.sh这个文件
rm -f test.sh
11.删除oldboy这个目录
rm -rf /oldboy
12.切换到/tmp目录下,查看当前的工作位置,同时创建data1、data2、data3、共三个目录。
cd /tmp
pwd
mkdir data{ 1.. 3}
13.接上一题,分别在data1、data2、data3三个目录下创建3个文件,名字为oldboy1、oldboy2、oldboy3.然后查看/tmp目录的整个目录结构情况,最后检查下data1和oldboy1两个对象的属性。
touch /tmp/data{ 1.. 3} /oldboy{ 1.. 3}
tree /tmp
ll /tmp/data*/oldboy1
ll -d /tmp/data1
14.把/etc/hosts文件复制到/tmp/data1目录下,然后把data1目录复制到/opt/目录下。
cp /etc/hosts /tmp/data1
cp -a /tmp/data1 /opt
15.将/tmp/data1目录移动到/root目录下,然后删除/opt/data1目录下的hosts文件,最后删除/opt目录下的data1目录。
mv /tmp/data1 /root
rm -rf /opt/data1
查看文件命令
echo
选项
-e
\n 换行符
\t tab键
[ root@qls ~]
[ \u@\h \W] \$
[ root@qls ~]
$PS1
[ root@qls ~]
[ \u@\h \W] \$
单引号 强引用,所见即所得
双引号 所见即所得,支持变量,会解析变量
不加引号 所见即所得,出现空格不会看做是个整体,会解析变量,支持通配符
反引号 先执行反引号里面的命令,把结果交给外面的命令。和$( ) 作用一样
[ root@qls ~]
echo命令可以创建文件,也可以写入内容到文件中
cat
选项
-n
-A
[ root@qls ~]
> oldboy
> egon
> EOF
cat >> oldboy.sh<< "EOF"
tank
$jason
EOF
more
选项
-n(数字) 指定一页显示多少行
+n(数字) 指定从第几行开始显示
内部命令
空格或f 向下翻页
b 向上翻页
回车 下一行
/ 搜索
= 显示当前光标所在行
q 退出
less
选项
-N
内部命令
空格或f 向下翻页
b 向上翻页
回车 下一行
/ 搜索,会高亮显示,n向下查找,N向上查找
= 显示当前光标所在页,第几行到第几行,会显示字节大小
q 退出
head
选项
-n (数字)
-n(数字)
-c
tail
选项
-n
-c
-f
-F
tailf
grep
选项
-i
-v
-n
-c
-w
-o
-E
-A
-B
-C
正则
^
$
^$
.
*
.*
[ ]
|