Linux(Centos 7.6)命令行快捷键

 Linux(Centos 7.6)操作系统一般都是使用命令行进行管理,如何能高效的进行命令编辑与执行,需要我们记住一些常见的命令,也需要连接一些常见快捷键的使用,常见快捷键如下:

快捷键快捷键说明
tab命令行补齐
ctrl+r快速查找之前命令(历史命令),并执行
ctrl+a光标移至行首
ctrl+e光标移至行末
ctrl+u删掉光标至行首的命令部分
ctrl+k删掉光标至行尾的命令部分
ctrl+y粘贴ctrl+u、ctrl+k删除的命令(与系统剪切板复制粘贴不冲突)
!nn是history命令输出的行号,快速执行历史命令
ctrl+z

中断正在进行的进程,但不结束进程,使用jobs命令可查看该进程

- bg:把已停止的进程,重新挂在后台执行(不加jobs编号,默认为带+的进程)

- fg:把已停止的进程,重新挂在前台执行(不加jobs编号,默认为带+的进程)

ctrl+c命令取消
ctrl+d类似输入exit回车

1.tab 快捷键

tab快捷键是命令行补齐或者目录文件名称补齐快捷键,适合命令行记得比较模糊,或者加快命令行输入的场景。

1.输入if,按一下tab没有反应,再按一下tab会输出如下,代表if开头的命令有以下这些。

[root@localhost ~]# if
if         ifcfg      ifconfig   ifdown     ifenslave  ifstat     ifup       
[root@localhost ~]# if

2.输入ifco,然后按一下tab,命令在同一行会自动补齐,ifco开头的命令只有一个,所以按以下tab就能补齐 。

[root@localhost ~]# ifco

2.ctrl+r 快捷键

ctrl+r快捷键是快速查找历史命令并执行的快捷键,适合快速执行历史执行过的命令。

1.先看一下历史执行过的命令;然后按快捷键ctrl+r,命令行会显示(reverse-i-search)`': ,在冒号后输入内容进行快速查询。

[root@localhost ~]# history 
    1  ifconfig 
    2  getenforce 
    3  systemctl stop firewalld.service 
    4  vi /etc/sysconfig/network-scripts/ifcfg-ens33 
    5  history 
[root@localhost ~]# 
(reverse-i-search)`': 

2.输入config后效果如下,提示编辑文件的命令,然后回车即可执行命令进行文件编辑。

[root@localhost ~]# 
(reverse-i-search)`config': vi /etc/sysconfig/network-scripts/ifcfg-ens33

3.ctrl+a 快捷键

ctrl+a快捷键是将光标移动到命令行行首,适合长命令行行首附近输入错误的修改,或者文件查看变编辑的命令修改。

1.行首附近输入错误修改,执行命令发现错误,根据提示发现是sy后少了一个s,按ctrl+a将光标快速移动到行首,然后右方向键移动到y后添加s,再执行命令。

2.文件查看cat命令变文件编辑vi命令。

4.ctrl+e 快捷键

ctrl+e快捷键是将光标移动到命令行行尾,适合光标不在行尾,但需要在行尾添加命令参数或者内容的场景。

1.文件编辑改为tail查看,然后ctrl+e将光标移动到末尾添加参数-f(当然-f参数也可以放到tail后面)。

5.ctrl+u 快捷键

ctrl+u快捷键是删除光标到行首部分的命令行内容。

上图光标在-f后,按快捷键ctrl+u会删除tail -f部分,删除后如下图

6.ctrl+k 快捷键

ctrl+k快捷键是删除光标到行尾部分的命令行内容。

上图光标在-f后,按快捷键ctrl+k会删除/etc/sysconfig/network-scripts/ifcfg-ens33部分,删除后如下图

7.ctrl+y 快捷键

ctrl+y快捷键是粘贴ctrl+uctrl+k删除的命令行部分。

7.1.粘贴ctrl+u删除的内容

1.ctrl+u删除tail -f

2.ctrl+y粘贴删除的tail -f(粘贴会原处)

7.2.粘贴ctrl+k删除的内容

1.ctrl+k删除文件路径和文件名称

2.ctrl+y粘贴删除的文件路径和文件名称(粘贴会原处)

8.!n 快速执行历史命令

使用history命令查看执行过的历史命令,使用感叹号(!)后面跟历史命令前的数值编号即可快速定位执行;如下,!2是执行第二个命令,history输出里面2后面的命令是getenforce,回车即执行,执行结果为Enforcing。

[root@localhost ~]# history 
    1  ifconfig
    2  getenforce
    3  systemctl stop firewalld.service
    4  vi /etc/sysconfig/network-scripts/ifcfg-ens33
    5  history 
[root@localhost ~]# !2
getenforce
Enforcing
[root@localhost ~]# 

9.ctrl+z 快捷键

ctrl+z快捷键时中断正在进行的进程,但不结束进程,使用jobs命令或者ps命令可查看该进程。

1.输入bg回车会后台继续执行ping命令,但是终端还是会显示ping的结果

[root@localhost ~]# bg
[1]+ ping 192.168.118.201 &
64 bytes from 192.168.118.201: icmp_seq=4 ttl=64 time=0.714 ms
[root@localhost ~]# 64 bytes from 192.168.118.201: icmp_seq=5 ttl=64 time=0.061 ms
64 bytes from 192.168.118.201: icmp_seq=6 ttl=64 time=0.116 ms
64 bytes from 192.168.118.201: icmp_seq=7 ttl=64 time=0.053 ms
64 bytes from 192.168.118.201: icmp_seq=8 ttl=64 time=0.123 ms
... ...

注:关闭上面后台执行的连接,重新建立一个连接,使用ps可以查看到还有ping进程,但是job没有了。 

2.输入fg回车会前台继续执行ping命令,也可ctrl+z终端站厅进程。

[root@localhost ~]# fg
ping 192.168.118.201
64 bytes from 192.168.118.201: icmp_seq=3 ttl=64 time=0.026 ms
64 bytes from 192.168.118.201: icmp_seq=4 ttl=64 time=0.049 ms
64 bytes from 192.168.118.201: icmp_seq=5 ttl=64 time=0.120 ms
... ...

10.ctrl+c 快捷键

ctrl+c快捷键是取消命令,这里包括不执行或者执行过程中取消执行。如ping某主机时,可以使用ctrl+c来取消执行,取消执行处有一个^C的标识。

[root@localhost ~]# ping 192.168.118.201
PING 192.168.118.201 (192.168.118.201) 56(84) bytes of data.
64 bytes from 192.168.118.201: icmp_seq=1 ttl=64 time=0.013 ms
64 bytes from 192.168.118.201: icmp_seq=2 ttl=64 time=0.051 ms
64 bytes from 192.168.118.201: icmp_seq=3 ttl=64 time=0.054 ms
^C
--- 192.168.118.201 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.013/0.039/0.054/0.019 ms
[root@localhost ~]# 

11.ctrl+d 快捷键

ctrl+d快捷键是停止命令,即执行过程中停止命令的执行。如ping某主机时,可以使用ctrl+d来停止执行,不会有任何提示,就保持如下状态不动。

<think> 我们参考了多个引用,其中引用[1]、引用[4]和引用[5]提供了在CentOS 7上安装JDK的步骤。虽然引用[5]是针对JDK8的,但环境变量配置部分有参考价值。引用[1]详细描述了JDK17的安装过程,引用[4]提供了环境变量配置的另一种写法。注意,CentOS 7.6CentOS 7是兼容的,所以步骤相同。 根据引用[1]和引用[4],我们可以整理出在CentOS 7.6命令行安装JDK 17的步骤: 1. 进入安装目录(通常选择/usr/local): ```bash cd /usr/local ``` 2. 创建Java安装目录并进入: ```bash sudo mkdir java cd java ``` 3. 下载JDK 17的tar.gz包(注意:由于Oracle官网下载需要登录认证,直接使用wget可能无法下载。建议手动下载后上传到服务器,或者使用其他无需认证的下载源。但引用[1]中给出的wget命令可能无法直接使用,因为Oracle官网需要接受许可协议。我们可以尝试使用--no-cookies和--header参数来模拟接受许可协议,或者从其他镜像站下载。然而,为了确保安全,这里建议用户前往Oracle官网下载JDK 17,然后通过FTP/SFTP上传到服务器。如果坚持使用wget,可以尝试以下命令(但请注意,Oracle许可协议可能不允许自动下载,因此请确保符合使用条款): ```bash wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz ``` 如果上述命令失效,请手动下载。 4. 解压下载的安装包(假设下载的文件名为jdk-17_linux-x64_bin.tar.gz): ```bash sudo tar -zxvf jdk-17_linux-x64_bin.tar.gz ``` 5. 进入解压后的目录(注意版本号可能不同): ```bash cd jdk-17.0.x # 请根据实际解压的目录名进入 ``` 6. 配置环境变量:编辑`/etc/profile`文件,在文件末尾添加Java环境变量。可以使用`sudo vim /etc/profile`,然后添加以下内容(注意JAVA_HOME的路径要和你解压的路径一致): ```bash export JAVA_HOME=/usr/local/java/jdk-17.0.x # 请替换x为实际版本号 export PATH=$PATH:$JAVA_HOME/bin ``` 或者,为了更全面的配置,可以按照引用[4]或引用[5]的方式: ```bash export JAVA_HOME=/usr/local/java/jdk-17.0.x export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin ``` 但注意,从JDK 9开始,CLASSPATH通常不需要设置,因为JRE已经被整合到JDK中。所以简单的设置JAVA_HOME和PATH即可。 7. 使环境变量立即生效: ```bash source /etc/profile ``` 8. 验证安装: ```bash java -version ``` 如果显示类似以下信息,则安装成功: ``` java version "17.0.x" ... ``` 注意:以上步骤需要root权限或者使用sudo。另外,如果系统之前安装过其他版本的JDK,可能需要通过`alternatives`配置默认版本,或者确保新版本的路径在PATH中优先。 根据引用[2]的内容,我们注意到在CentOS 6中安装JDK7时出现了版本未切换的问题,这是因为系统可能同时存在多个JDK。在CentOS 7中,如果出现类似问题,可以使用以下方法查看和切换默认JDK版本: ```bash sudo alternatives --config java ``` 然后根据提示选择对应的JDK17版本(如果已经安装了多个版本)。 因此,完整的步骤包括下载、解压、配置环境变量和验证。 另外,引用[3]和引用[5]虽然针对的是JDK8,但步骤基本一致,只是版本不同。 最后,在安装过程中,注意权限问题,如果当前用户不是root,请使用sudo执行需要权限的命令。 下面我们按照步骤详细说明。 </think> ### CentOS 7.6 命令行安装 JDK 17 的完整指南 #### 安装步骤: 1. **创建安装目录** ```bash sudo mkdir -p /usr/local/java cd /usr/local/java ``` 2. **下载 JDK 17 安装包** (需先接受Oracle许可协议): ```bash sudo wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" \ https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz ``` 3. **解压安装包**: ```bash sudo tar -zxvf jdk-17_linux-x64_bin.tar.gz ``` 4. **配置环境变量**: 编辑 `/etc/profile` 文件: ```bash sudo vi /etc/profile ``` 在文件末尾添加: ```bash export JAVA_HOME=/usr/local/java/jdk-17.0.* # 星号替换为实际版本号 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib ``` 5. **使配置生效**: ```bash source /etc/profile ``` 6. **验证安装**: ```bash java -version ``` 成功输出应显示:`java version "17.0.x"` #### 关键注意事项: 1. 必须使用 `sudo` 执行权限操作[^1][^4] 2. JDK 路径中的版本号需与实际解压目录名一致(可通过 `ls /usr/local/java` 查看) 3. 若系统预装OpenJDK,需确保新JDK路径在 `PATH` 中优先级更高[^2] 4. 多用户环境需重启或执行 `source /etc/profile` 使所有会话生效[^5] #### 常见问题解决: - **版本未切换**:运行 `sudo alternatives --config java` 手动选择JDK 17 - **权限不足**:确保使用 `sudo` 或切换到root用户 - **环境变量失效**:检查 `/etc/profile` 的语法错误,确保变量导出正确[^4] > 注:JDK 17 不再需要单独配置JRE,CLASSPATH 设置已简化[^4][^5]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豆是浪个

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值