一、启动shell
GNU bash shell是一个可以交互访问Linux系统的程序。系统启动的shell取决于用户ID配置。/etc/passwd文件包含一个所有系统用户账户组成的列表,以及一些关于用户的配置信息。
[root@x86-139 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
...
...
#每个条目都有7个数据字段,使用冒号分隔。
-用户名
-用户密码(如果密码存储在其他文件中,则为占位符)
-用户的系统用户ID编号
-用户的系统组ID编号
-用户的全名
-用户的默认主目录
-用户的默认shell程序
二、shell提示符
bash shell的默认提示符是美元符号($),该符号表示shell等待输入文本,也可改变shell所用的提示符格式。
[root@x86-139 ~]#
root:用户名
x86-139:主机名
~:工作目录
#:提示符
控制命令行提示符的环境变量有2个:
PS1:控制默认命令行提示符的格式
PS2:控制第二层命令行提示符的格式
[root@x86-139 ~]# echo $PS1
[\u@\h \W]\$
[root@x86-139 ~]# echo $PS2
>
[root@x86-139 ~]#
示例:(谨慎使用!!!)
[root@x86-139 ~]# PS1="[\t][\u]\$"
[23:36:44][root]$
三、bash手册
安空格键可以翻页,也可以使用方向键滚动页面文本
[zc@x86-139 ~]$ man bash
四、文件系统导航
(1)Linux文件系统
Linux在一个目录结构中存储文件,该目录成为虚拟目录,虚拟目录包含PC上安装的所有存储文件路径,他们都合并为一个目录结构。
[zc@x86-139 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931G 0 disk
├─sda1 8:1 0 200M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 929.8G 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 4G 0 lvm [SWAP]
└─centos-home 253:2 0 875.8G 0 lvm /home
[zc@x86-139 ~]$ ls /
bin etc lib mnt run swapfile var
boot home lib64 opt sbin sys vmlinuz
cdrom initrd.img lost+found proc snap tmp
dev initrd.img.old media root srv usr
(2)浏览目录
cd destination
destination参数可以使用两种不同的方法表示:
绝对文件路径
相对文件路径
1》绝对文件路径
[zc@x86-139 ~]$ cd /usr/lib/gcc/
2》相对文件路径
[zc@x86-139 gcc]$ cd
[zc@x86-139 ~]$ cd .
[zc@x86-139 ~]$ cd ..
[zc@x86-139 home]$
#:点(.)表示当前目录
#:点(..)表示父目录
#:点( )表示用户的home目录
五、文件和目录列表
(1)基本列表
zc@linux-B7102T76V12HR-2T-N:~$ ls
examples.desktop openshit
zc@linux-B7102T76V12HR-2T-N:~$ ls -F //区分文件和目录
examples.desktop openshit/
zc@linux-B7102T76V12HR-2T-N:~$ ls -F -R //浏览所有的目录
.:
examples.desktop openshit/
./openshit:
admin-env.sh openshit.sh* service.conf setting.conf
conf_editor.py pre-install.sh service-env.sh
LICENSE README.md services/
./openshit/services:
--all dashboard keystone neutron nova-network
cinder glance mysql nova rabbitmq
(2)修改显示的信息
zc@linux-B7102T76V12HR-2T-N:~$ ls -l
总用量 16
-rw-r--r-- 1 zc zc 8980 4月 16 2018 examples.desktop
drwxrwxr-x 4 zc zc 4096 12月 28 22:30 openshit
-文件类型(比如目录(d)、文件(-)、字符设备(c)、块设备(b))
-文件的权限
-指向该文件的硬链接数量
-文件所有者的用户名称
-文件所属的组的名称
-文件的字节大小
-上次修改文件的时间
-文件或目录名称
(3)完整的参数列表
ls 命令使用两种命令行参数:
单字母参数;
全字(长)参数;
(4)过滤列表输出
问号表示一个字符
星号表示零个或多个字符
zc@linux-B7102T76V12HR-2T-N:~$ ls -l examples.desktop
-rw-r--r-- 1 zc zc 8980 4月 16 2018 examples.desktop
zc@linux-B7102T76V12HR-2T-N:~$ ls -l examples.deskto?
-rw-r--r-- 1 zc zc 8980 4月 16 2018 examples.desktop
zc@linux-B7102T76V12HR-2T-N:~$ ls -l examples*
-rw-r--r-- 1 zc zc 8980 4月 16 2018 examples.desktop
六、文件处理
(1)创建文件
zc@linux-B7102T76V12HR-2T-N:~$ touch haha //创建一个文件
zc@linux-B7102T76V12HR-2T-N:~$ ll
总用量 56
drwxr-xr-x 5 zc zc 4096 1月 1 18:08 ./
drwxr-xr-x 7 root root 4096 12月 29 15:27 ../
-rw-r--r-- 1 zc zc 8980 4月 16 2018 examples.desktop
-rw-rw-r-- 1 zc zc 0 1月 1 18:08 haha
drwxrwxr-x 4 zc zc 4096 12月 28 22:30 openshit/
zc@linux-B7102T76V12HR-2T-N:~$ touch -t 201812311200 haha //修改创建文件的时间
zc@linux-B7102T76V12HR-2T-N:~$ ll
总用量 56
drwxr-xr-x 5 zc zc 4096 1月 1 18:08 ./
drwxr-xr-x 7 root root 4096 12月 29 15:27 ../
-rw-r--r-- 1 zc zc 8980 4月 16 2018 examples.desktop
-rw-rw-r-- 1 zc zc 0 12月 31 12:00 haha
drwxrwxr-x 4 zc zc 4096 12月 28 22:30 openshit/
(2)复制文件
zc@linux-B7102T76V12HR-2T-N:~$ ls
examples.desktop haha openshit
zc@linux-B7102T76V12HR-2T-N:~$ cp haha haha1
zc@linux-B7102T76V12HR-2T-N:~$ ls
examples.desktop haha haha1 openshit
(3)链接文件
符号链接(软链接)
$:cp -s test1 test2
硬链接
$:cp -l test1 test2
(4)重命名文件
$: mv test1 test5 //可以是文件或目录
(5)删除文件
$:rm test1
$:rm -r test2
七、目录处理
(1)创建目录
$:mkdir dir1
(2)删除目录
$:rmdir dir1
$:rm -rf dir1
八、查看文件内容
(1)查看文件统计数据---stat命令
zc@linux-B7102T76V12HR-2T-N:~$ stat examples.desktop
文件:examples.desktop
大小:8980 块:24 IO 块:4096 普通文件
设备:802h/2050d Inode:20188605 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 1002/ zc) Gid:( 1002/ zc)
最近访问:2019-01-01 20:26:56.027006748 +0800
最近更改:2018-04-16 16:18:02.000000000 +0800
最近改动:2018-12-28 16:21:06.806703673 +0800
创建时间:-
(2)查看文件类型----file
file命令将文件分为以下3类:
文本文件:包含可打印字符的文件
可执行文件:可以在系统运行的文件
数据文件:包括不可打印的二进制字符的文件,但也不可以在系统运行
zc@linux-B7102T76V12HR-2T-N:~$ file examples.desktop
examples.desktop: UTF-8 Unicode text
(3)查看整个文件
cat命令
$:cat test1
$:cat -n test1 //-n参数为所有行编号
$:cat -b test1 //-b只需要为带文本的行编号
$:cat -T test1 //不希望出现跳格字符
more命令
less命令 ------(基本同more)
(4)查看部分文件
tail命令
head命令
zc@linux-B7102T76V12HR-2T-N:~$ head examples.desktop //默认只显示前10行