Linux 操作技巧

目录

一、shell-命令解释器

二、Linux中的特殊符号

三、命令历史--history


一、shell-命令解释器

shell------壳,命令解释器,负责解析用户输入的命令

------内置命令(shell内置)

------外置命令,在文件系统的某个目录下,有个与命令名称相同的文件

type命令用来查看命令是file、alias还是builtin

type -a 列出当前命令可以如何执行

type -t 仅列出命令按照哪种方式执行

alias命令可以创造属于个人的命令 (命令别名)

格式:alias 新命令 = '命令组合' (每个命令之间用";"隔开)

XML 复制代码
#查看设置的别名
[root@node13 ~]# alias
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'
......
#删除别名:
[root@node13 ~]#unalias 别名

当我们alias进行自定制命令时,在命令行定义的命令是一次性的,当关闭了命令行,该命令就被删除了

如果需使用永久性的自定义命令,则需要将命令定义在 .bashrc 或 .bash_profile 中

XML 复制代码
#打开配置文件
[root@RHEL ~]# vim .bashrc 

#在文件中 添加自定义命令
...
alias myls='ls -Al'
...

#重新加载配置文件
[root@RHEL ~]# source .bashrc 

每一个用户的家目录都有两个关于用户的配置文件

.bashrc(su可以加载到)

.bash_profile(su -才能加载到)

二、Linux中的特殊符号

|-----------------|---------------------------------------------|--------------------------------------------------------------------------------|
| 特殊符号 | 功能 | 说明 |
| ; | 可使用分号分隔多条命令 | 在一行上输入和执行多条较短的命令,可使用分号来分隔命令 |
| * | 匹配任意零个或多个字符 | 不能用于创建文件 |
| ? | 匹配任意单个字符 | 不能用于创建文件 |
| [] | 匹配方括号中的任意一个字符,表示范围可以用"-" | 不能用于创建文件 |
| [^] [!] | 匹配方括号中的任意一个字符或数字后进行取反 | 用于查找和删除文件,不用于创建文件 |
| {string,string} | 匹配括号中的任意一个字符串,表示一个范围时,字符串之间加上".." | 可用于创建、查看、删除文件 |
| \ | 使\后面的特殊字符失效 | 例:在命令行后加"\",再按回车键并不表示执行该命令,而是表示换行,通过此方式将一个较长的命令分成多行表达,增强命令的可读性。换行后系统自动显示提示符> |
| ` | 反引号,一般用于引用命令,执行的时候反引号里面的命令会被执行,与()作用相同** | | | **'** | **单引号,将单引号内的所有内容都原样输出** | **所有特殊字符在单引号中都会失去特殊含义** | | **"** | **双引号,除了几个特殊字符外,将双引号内的几乎所有内容都原样输出** | **"" 、"\"、 "`"在双引号里仍然保留自己的特殊含义 |

三、命令历史--history

history------可以用来查阅命令历史记录,也可在命令行利用向上或向下光标键来进行查询

语法:history [选项] [参数]

选项:

number 显示最近number条的命令历史

-c 清空当前历史命令

-a [file] 后面没跟文件时,默认将缓冲区中历史命令写入~/.bash_history中(可指定文件,将当前shell缓存命令保存到该文件中)

-r [file] 将历史命令文件中的命令读入当前历史命令缓冲区中(将指定文件的命令读取到shell缓冲区中,如果缺省文件则默认从.bash_history)

-w 将当前历史命令缓冲区命令写入历史命令文件中

XML 复制代码
[root@localhost ~]# history 5
   80  type ls
   81  type cd
   82  cd ..
   83  ll
   84  history 5

!84 将第84条命令再执行一遍
[root@localhost Documents]# !84
history 5
   92  history -10a new_ history.txt
   93  history -10 -a new_ history.txt
   94  cat history.txt
   95  ll
   96  history 5

!!执行上一条命令
[root@localhost Documents]# !!
history 5
   92  history -10a new_ history.txt
   93  history -10 -a new_ history.txt
   94  cat history.txt
   95  ll
   96  history 5

命令行中的其他快捷键:

ctrl+d 输入已结束;也可当做exit

ctrl+c 键盘中断请求,终止当前的命令

Ctrl+a 移动到当前行的开头

Ctrl+e 移动到当前行的结尾

Ctrl+l 清屏==clear

Ctrl+u 剪切命令行中光标所在处之前的所有字符(不包括自身)

Ctrl+k 剪切命令行中光标所在处之后的所有字符(包括自身)

ctrl+←/→ 光标在命令行中按照单词跳转

引用上一条命令的最后一个参数

方法1:!$

方法2:先按Alt再输入.

方法3:先按Esc在输入.

相关推荐
肖永威5 分钟前
CentOS环境上离线安装python3及相关包
linux·运维·机器学习·centos
tian2kong8 分钟前
Centos 7 修改YUM镜像源地址为阿里云镜像地址
linux·阿里云·centos
mengao123410 分钟前
centos 服务器 docker 使用代理
服务器·docker·centos
布鲁格若门12 分钟前
CentOS 7 桌面版安装 cuda 12.4
linux·运维·centos·cuda
Eternal-Student16 分钟前
【docker 保存】将Docker镜像保存为一个离线的tar归档文件
运维·docker·容器
C-cat.19 分钟前
Linux|进程程序替换
linux·服务器·microsoft
dessler19 分钟前
云计算&虚拟化-kvm-扩缩容cpu
linux·运维·云计算
怀澈12221 分钟前
高性能服务器模型之Reactor(单线程版本)
linux·服务器·网络·c++
DC_BLOG23 分钟前
Linux-Apache静态资源
linux·运维·apache
学Linux的语莫25 分钟前
Ansible Playbook剧本用法
linux·服务器·云计算·ansible