Linux命令行之使光标快速移动的快捷键

 更新时间:2023年11月02日 11:36:09   作者:zpjing~.~  
这篇文章主要介绍了Linux命令行之使光标快速移动的快捷键,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Linux命令行 使光标快速移动的快捷键

linux命令行执行命令时,快速移动光标可节省不少时间,如下是快速移动光标的快捷键:

1.光标快速切换到行尾行首

  • ctrl+a 行首
  • ctrl+e 行尾

2.删除至行尾 | 清除当前光标位置之前的一个单词

  • ctrl+k  可以将当前光标位置之后的所有部分快速清除
  • Ctrl + w 可以清除当前光标位置之前的一个单词

3.删除命令行的命令

  • ctrl + u 可以直接将整行命令直接清除

4.左|右移动一个单词

  • Esc b 左移一个单词[back]
  • Esc f 右移一个单词[forward]

注意:每次按下快捷键,需抬起后再按下快捷键,方可多次移动单词。

Linux命令行 光标移动技巧等

移动

  • Ctrl + a:移动光标到命令行首
  • Ctrl + e:移动光标到命令行尾
  • Ctrl + b:同键盘左键,向左移动光标
  • Ctrl + f:同键盘右键,向右移动光标

在mac中,需要在终端首选项中设置{将Option键用做Meta键}

  • Alt + b:向前移动一个词的距离
  • Alt + f:向后移动一个词的距离

删除

  • Ctrl + h:同Backspace,退格向左删除
  • Ctrl + d:同delete,向右删除(光标所在位置的字符)
  • Ctrl + w:删除光标前面的单词的字符
  • Alt + d :删除光标后面的单词的字符
  • Ctrl + u:从当前光标所在位置向左剪切全部命令
  • Ctrl + k:从当前光标所在位置向右剪切全部命令
  • Ctrl + p:显示上一条命令,同向上箭头
  • Ctrl + n:显示下一条命令,同向下箭头

其他

  • Ctrl+t: 交换光标位置前的两个字符
  • Ctrl+y: 粘贴或者恢复上次的删除
  • Ctrl+z : 把当前进程转到后台运行,使用’ fg ‘命令恢复。比如top -d1 然后ctrl+z ,到后台,然后fg,重新恢复
if __name__ == '__main__':
    sshkey=get_sshkey_content(sys.argv[1])
    print(sshkey)

    print '!!! start'
    s_minute_hout  = '02:00'
    times = time_parse(s_minute_hout)
    ip = "192.168.43.155"
    port = "22"
    user = "pi"
    logPath = "/home/pi"
    print(is_valid_port(port))
    try:
        retcode = subprocess.check_call("./set_scp_crontab.sh 2  %s %s %s %s %s " % (ip, port, user, logPath, times),   shell=True)
        print(retcode)
    except subprocess.CalledProcessError as e:
        print e.returncode
        print e.cmd
        print e.output
    print '!!! end'

#!/bin/bash

# Paramater
#  $1: 0|1|2   0: ssh-gen 1: test 2: setup crontab
#  $2: log server ip address
#  $3: scp port
#  $4: user name
#  $5 log path on log server
#  $6 crontab minute hour
#  $7 crontab hour

SSH_KEY_PATH="/home/whz/.ssh/"
#SSH_KEY_PATH="/home/vpnmanager/.ssh/"
SSH_KEY_NAME="thinclsvpn.key"
SSH_KEY="$SSH_KEY_PATH$SSH_KEY_NAME"
VPN_USER="whz"
VPN_LOG_FILE="/var/log/openvpn/*.log"

#if [ `whoami` != "root" ]; then
#  echo "Execute this script as root user." >&2
#  exit 1
#fi

function ssh_gen () {
  # if ssh_key already exist, delete it.
  if [ -e $SSH_KEY ]; then
         rm -f $SSH_KEY
  fi

  # create a ssh key
  ssh-keygen -q -t rsa -N '' -f $SSH_KEY
  exitCode=$?

  #echo `cat "$SSH_KEY.pub"`
  return $exitCode
}

function test_scp () {
  # if ssh_key not exist,  exit
  if [ ! -e $SSH_KEY ]; then
         echo "ssh key not exist!"
         exit 1
  fi

  # scp copy log file to logserver
  scp -Cqpi $SSH_KEY -P $PORT -o PasswordAuthentication=no -o StrictHostKeyChecking=no  $VPN_LOG_FILE $USER@$IP:$LOG_PATH 2>&1

  return $?
}

function setup_crontab () {
  # if ssh_key not exist,  exit
  if [ ! -e $SSH_KEY ]; then
         echo "ssh key not exist!"
         exit 1
  fi

  command="scp -Cqpi $SSH_KEY -P $PORT -o PasswordAuthentication=no -o StrictHostKeyChecking=no  $VPN_LOG_FILE $USER@$IP:$LOG_PATH"
  cronDescription="$minute $hour * * * $command > /dev/null 2>&1"

  # delete current setting
  crontab -r

  # setup crontab
  echo "$cronDescription" | crontab
  return $?
}

# main function
if [ $1 -eq 0 ]; then
  ssh_gen
else
  IP=$2
  PORT=$3
  USER=$4
  LOG_PATH=$5
  if [ $1 -eq 1 ]; then
    test_scp
  else
    minute=$6
    hour=$7
    setup_crontab
  fi
fi

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux提示网络不可达问题

    Linux提示网络不可达问题

    这篇文章主要介绍了Linux提示网络不可达问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Ubuntu 20.04双拼输入法的安装步骤

    Ubuntu 20.04双拼输入法的安装步骤

    这篇文章主要介绍了Ubuntu 20.04双拼输入法的安装步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • Linux下Squid配置详解 Squid代理服务器配置

    Linux下Squid配置详解 Squid代理服务器配置

    本文介绍Linux下非常著名、常用的Squid代理服务器的使用,并着重讲述如何使用其提供的访问控制策略,来保证代理服务器的合法使用。
    2009-10-10
  • 使用反向ssh从外网访问内网主机的方法详解

    使用反向ssh从外网访问内网主机的方法详解

    这篇文章主要给大家介绍了使用反向ssh从外网访问内网主机的方法,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下来要起看看吧。
    2017-04-04
  • 在Linux中部署并初始化MySQL的多种方式

    在Linux中部署并初始化MySQL的多种方式

    MySQL是常用的关系型数据库,被广泛用于学习与实际工作中,本篇文章介绍在Linux系统中使用多种方式部署并初始化MySQL数据库,包括源码安装、rpm安装以及yum安装,需要的朋友可以参考下
    2025-11-11
  • Linux flock原理分析(shell进阶)

    Linux flock原理分析(shell进阶)

    flock锁在内核openfiletable中,文件打开涉及用户与内核的fd、inode表,多个进程共享v节点,未同步写入可能导致数据覆盖,劝告式锁需进程主动申请生效
    2025-07-07
  • linux服务器系统CentOS、uBuntu、Gentoo、FreeBSD、Debian的比较

    linux服务器系统CentOS、uBuntu、Gentoo、FreeBSD、Debian的比较

    最近一直都是在玩ubuntu的,但是做web服务器的CentOS还是经常被用到,自己也糊涂了
    2012-12-12
  • VNC连接Linux服务器蓝屏的解决方法

    VNC连接Linux服务器蓝屏的解决方法

    本文介绍了使用VNC连接Linux远程桌面出现蓝屏问题的现象,并提供了解决方法,包括执行相关命令、重启VNC进程并重新连接,成功消除蓝屏问题,需要的朋友可以参考下
    2025-10-10
  • CentOS中yum 源的配置与使用详解

    CentOS中yum 源的配置与使用详解

    这篇文章主要介绍了CentOS中yum 源的配置与使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。
    2016-12-12
  • Linux定时自动删除旧垃圾文件的Autotrash工具

    Linux定时自动删除旧垃圾文件的Autotrash工具

    今天小编就为大家分享一篇关于Linux定时自动删除旧垃圾文件的工具,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-09-09

最新评论