03 linux基础命令

linux基础命令

补充:bash的基础特性

\v:bash的版本号  bash是黑命令窗口
(1).命令历史
  history
环境变量:
HISTSIZE:命令历史记录的条数
HISTFILE:~ /.bash_history
HISTFILESIZE:命令历史文件记录历史的条数
history -d OFFSET

history #:显示历史中最近的#条命令

-a:手动追加当前会话缓冲区的命令历史至历史文件中

修改环境变量值的方式:export 变量名=“值”

(2).命令补全

bash执行命令:

内部命令:

外部命令:bash根据PATH环境变量定义的路径,自左而右在每一个路径搜寻以给定命令名命名的文件,第一次找到的即为要执行的命令

直接补全:tab 用户给定的字符串中只有一条唯一对应的命令:以用户给定的字符串为开头对应的命令不唯一,则再次Tab会给出列表

(3)路径补全:

把用户给出的字符串当作路径开头,并在其指定上级目录下搜索以指定的字符串开头的文件名,如果唯一则直接补全;否则,再次Tab,给出列表

一、查看帮助信息命令(linux命令大全)

1.man

 1.man命令的功能是查看某一条命令的详细解释。

2.输出帮助信息查看方法
  格式:man [具体需要被查看的命令]
  NAME:命令解释说明信息
  SYNOPSIS:命令语法说明信息
  DESCRIPTION命令参数详细说明
  option:命令的所有选项

3.快捷键:
键盘上下键:切换屏幕    
退出:按q键
搜索(注:光标最好放在第一行,第二次定位按n键查找下一个):按/键+搜索内容+回车

2.help

 
3种格式:
 -h
 --help   : [root@localhost ~]$ shutdown --help
help

二、 系统常用的快捷键

01显示历史输入命令信息:方向键 上 下(前提是同一个命令行窗口)
02清除所有屏幕信息输出: ctrl+l 或clear
03取消/中断命令执行过程 ctrl+c
04快速移动光标到行首/行尾 ctrl+a/ctrl+e
05将光标到行首的信息剪切 ctrl+u
06将光标到行尾的信息剪切 ctrl+k
07将剪切的内容进行粘贴   ctrl+y
08锁定系统窗口信息状态   ctrl+s
09解锁系统窗口信息状态   ctrl+q
10命令行中快速移动光标   ctrl+方向键 左 右
11系统命令信息补全功能(必须唯一) Tab

三、Linux操作系统目录路径相关命令

1.pwd命令——显示当前路径的信息(print working directory)

pwd命令:查看当前所在目录的路径(绝对路径)
实际上使用的是系统环境变量中的PWD的值

printenv:打印系统环境变量
系统环境变量:系统默认给咱们定义的变量

2.cd命令——切换目录路径信息(change directory)

格式:cd [目标路径]
1.切换到/etc/sysconfig/network-scripts :cd /etc/sysconfig/network-scripts
2.由上述1切换到/etc: cd /etc   或 cd ../..
3.切换到上一次所在的目录 cd -
4.切换到上一级目录:cd ..
5.切换到家目录:cd ~ 或 cd /root/ 或 cd

3.mkdir命令——进行目录创建操作(创建文件夹make directory)

格式:mkdir [选项(非必须)] [被创建的目标路径]
1.创建单层目录  
(1)在当前目录创建一个名为:test的文件夹   mkdir test
(2)在/root目录下创建一个名为test01的目录  mkdir /root/test01
2.创建多层目录  mkdir -p /root/aa/bb/cc
-p选项:自动创建父级目录(递归创建文件夹)

四、文件目录相关命令

1.创建文件信息命令

touch命令:1.创建空白的文件 2.修改文件的时间(touch -t)
格式:touch [选项] [被创建的文件的路径]
补充:
{} :表示循环
.. :连续
, :不连续
1.创建一个名为abc的文件 touch abc
2.创建/root/a/abc  touch /root/a/abc (a必须已经存在)
3.创建test1~test100中的所有文件   touch test{1..100}
4.创建test111 ~ test199 ,并且在其每一个目录中都创建test文件
  mkdir test1{11..99}
  touch test1{11..99}/test
5.创建test003、test006、test009这三个文件
  touch test00{3,6,9}
  touch test11{3..9,1}  #只显示test113..9,test111两个文件

2.查看数据信息命令

ls命令:查看指定目录下的所有文件
格式:ls [选项] [指定的路径]
ls 后面默认跟的是当前文件夹的路径
隐藏文件:linux中以.开头的文件即为隐藏文件
选项(参数):
- l : 查看文件详细信息
-a : 查看隐藏文件
-h : 格式化显示文件大小(前提:必须跟-l参数一起使用)
--color=auto : 显示颜色(注:不能够通过颜色判断文件属性)

补充:

ls -l 等价于 ll
-
知识储备:
dd
if : 指定读取的文件
of : 指定写入的文件
bs : 定义一次写入多少内容
count:定义写入多少次
要求生成一个1000M的文件
dd if=/dev/zer0 of=1.txt bs=10M count=100 生成一个名为1.txt的文件,大小是1000M
[root@localhost ~]$ dd if=/dev/zero of=1.txt bs=10M count=100
100+0 records in
100+0 records out
1048576000 bytes (1.0 GB) copied, 13.4242 s, 78.1 MB/s
常见的文件的属性表示符:
f(FILE -):普通文件的标识符 -:文件的属性
d(DIRECTORY):普通文件夹的标识符
1.案例1:查看当前目录里的所有文件
[root@localhost ~]$ ls
anaconda-ks.cfg init.sh
2.案例2: 查看当前目录中文件的详细信息
[root@localhost ~]$ ls -l
-rw-------. 1 root root 1776 Sep 13 11:10 anaconda-ks.cfg
-rw-r--r--. 1 root root 5632 Sep 13 12:14 init.sh
rw-r--r--. : 文件的权限
r : 可读
w : 可写
x : 可执行
- :没有对应的权限
权限位:
属主(自己)
属组(指定组中的所有的用户的权限)
其他用户
1 : 硬链接个数
硬链接
软连接
root root 1776:属主 属组 文件的大小(单位:字节B)
8BITE=1Byte
1024Byte=1kb
1024kb=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
Sep 13 12:14 : 文件创建的时间
init.sh : 文件的名称
alias:别名
格式: alias 字符=“相关的命令”
\ls -l \去掉本来的属性
案例1:查看系统所有的别名
alias

案例2:设置一个别名
alias lh="ls -l -h"

3.输出打印字符信息

echo:输出
格式:echo [输出的内容] [重定向字符(非必须)] [重定向的文件(非必须)]
案例1:输出Hello World
[root@localhost ~]$ echo "Hello Wolrd"
Hello Wolrd
[root@localhost ~]$ echo "Hello Wolrd"
Hello Wolrd

案例2:将Hello Wolrd输出到文件2.txt中
[root@localhost ~]$ echo "Hello Wolrd" > 2.txt

知识储备:

> : 覆盖重定向(先将文件中原有的内容清空,然后写入内容到文件)
>> : 追加重定向(将内容写入到文件最后边,原有的内容不变)
重定向 : 把某个内容,通过某种方式输入到指定文件中,即为重定向

4.查看文件信息

cat:读取,打印
格式:cat 选项(非必须) [读取的文件路径]
选项:
-n :显示行号
案例1: 读取2.txt中的内容

[root@localhost ~]$ cat 2.txt
Hello Wolrd01
Hello Wolrd02

案例2: 读取/etc/hosts文件内容,输入到3.txt中

[root@localhost ~]$ cat /etc/hosts > 3.txt
[root@localhost ~]$ cat 3.txt
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

案例3: 将
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
写入到4.txt中

[root@localhost ~]$ cat > 4.txt <<EOF
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
EOF # 一定要顶格写
[root@localhost ~]$ cat 4.txt
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
案例4: 要求读取4.txt中的内容,并打印行号
[root@localhost ~]$ cat -n 4.txt
1 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
2 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

5.复制文件数据信息

cp : copy的缩写
格式:
cp [选项(非必须)] [原路径] [新路径]

选项:
-r : 递归复制目录
-i : 增加覆盖提示
-p : 保留原有文件的属性
-d : 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
案例1:将1.txt复制到/tmp目录
[root@localhost ~]$ cp 1.txt /tmp/
[root@localhost ~]$ ls
1.txt 2.txt 3.txt 4.txt test
[root@localhost ~]$ ls /tmp/
1.txt
案例2:将/var/log目录及其目录中的所有内容全部复制到/tmp目录

[root@localhost ~]$ cp -r /var/log /tmp/
[root@localhost ~]$ ls /tmp/
1.txt ks-script-AD1ezZ log vmware-root_935-3980298462 yum.log
[root@localhost ~]$ ls /var/log/
anaconda boot.log-20210915 dmesg.old maillog spooler vmware-vgauthsvc.log.0 yum.log
audit btmp firewalld messages tallylog vmware-vmsvc-root.log
boot.log cron grubby_prune_debug rhsm tuned vmware-vmtoolsd-root.log
boot.log-20210914 dmesg lastlog secure vmware-network.log wtmp
[root@localhost ~]$ ls /tmp/log/
anaconda boot.log-20210915 dmesg.old maillog spooler vmware-vgauthsvc.log.0 yum.log
audit btmp firewalld messages tallylog vmware-vmsvc-root.log
boot.log cron grubby_prune_debug rhsm tuned vmware-vmtoolsd-root.log
boot.log-20210914 dmesg lastlog secure vmware-network.log wtmp

案例3: 仅将/var/log/messages、/var/log/boot.log、/var/log/vmware-network.log三个文件复制到/tmp

[root@localhost ~]$ cp /var/log/{messages,boot.log,vmware-network.log} /tmp/
案例4: 将/etc/system-release 复制到 /tmp目录下

[root@localhost ~]$ cp -d /etc/system-release /tmp/

案例5: 复制2.txt到/tmp目录中,要求不更改其创建时间

知识储备:
stat : 查看文件创建时间的

[root@localhost ~]$ cp -p 5.txt /tmp/



posted @ 2021-09-16 10:17  甜甜de微笑  阅读(177)  评论(0编辑  收藏  举报