[20231109]bash shell快捷鍵alt+number的問題.txt

来源:https://www.cnblogs.com/lfree/archive/2023/11/10/17824986.html
-Advertisement-
Play Games

前言 由於業務需要,需要多台雲伺服器,但是公有雲的帶寬價格不菲,所以不可能給所有的雲伺服器都配上公網IP,一方面是成本的問題,另一方面也是公網安全的問題。 所以通過其它的方式使用無公網的雲伺服器來來實現對外資源的訪問。 一、操作步驟 至少需要有一臺具有公網IP的雲伺服器! 1、開啟ECS的路由轉發功 ...


[20231109]bash shell快捷鍵alt+number的問題.txt

--//前一陣子,我想實現12行合併1行的輸出,理論講要使用paste命令加入12個- .輸入命令時候要數輸入了多少-.我知道bash shell有一
--//個快捷鍵alt+number可以產生連續輸入某個字元,但是我一直不知道如何關掉這個功能.有時候誤觸發這個功能,有一些版本每次輸入1
--//個字元相當於輸入多個,我不知道如何關閉,出現這樣情況我基本選擇關閉會話,重新登陸.

--//比如輸入:
$ seq 12 | paste - - - -

--//可以這樣操作,輸入:
seq 12 | paste <alt-4>-
--//然後移動回去加入空格.
--//有一些版本存在bug,比如你再使用方向鍵向左移動,相當於移動向左移動4個字元.使用完成後必須關閉它.
--//打入一個字元會出現4個相同字元的情況.
--//我測試一下,發現使用<ALT+`>可以關閉,好像這個問題存在於早期bash shell版本中。

# man bash
Numeric Arguments
   digit-argument (M-0, M-1, ..., M--)
   Add this digit to the argument already accumulating, or start a new argument.  M-- starts a negative argument.

--//怎麼還能輸入負數,不理解,負數實際上反向操作。
111 222 333<alt +   3><esc><backspae> --//假設游標在最後,刪除3個詞。
111 222 333<alt + - 3><esc><backspae> --//假設游標在1的位置,也能實現相同效果。

universal-argument
    This is another way to specify an argument.  If this command is followed by one or more digits, optionally with a
    leading minus sign, those digits define the argument.  If the command is followed by  digits,  executing
    universal-argument  again ends the numeric argument, but is otherwise ignored.  As a special case, if this command
    is immediately followed by a character that is neither a digit nor minus sign, the argument count for the next
    command is multiplied by four.  The argument count is initially one, so executing this function the first time makes
    the argument count four, a second time makes  the argument count sixteen, and so on.

通用參數

這是指定參數的另一種方法。如果此命令後面跟著一個或多個數字,或者帶有前導負號,則這些數字將定義該參數。如果命令後面跟著數
字,則執行通用參數再次結束數字參數,否則將忽略。作為一種特殊情況,如果這個命令緊接著是一個既不是數字也不是負號的字元,下
一個命令的參數計數乘以4。參數計數最初是1,所以第一次執行這個函數使參數數4,第二次使參數數16,以此類推。
--//不理解?怎麼意思。

--//如果你需要輸出12 個1,如何操作呢?要輸入ctrl+v.
--//<alt+1+2>,<ctrl+v> 1 .

--//另外我還看了一些blog,發現一個技巧就是利用它輸入前面輸入的參數.
--//假設先執行如下命令:
$ echo 1 2 3
1 2 3

$ echo 4 5 6
4 5 6

$ echo 7 8 9
7 8 9

--//要實現echo 1 5 9,可以這樣操作.
<alt+0> <alt+.>    --//顯示echo,輸入空格
<alt+1> <alt+...>  --//顯示1,輸入空格
<alt+2> <alt+..>   --//顯示5,輸入空格
<alt+3> <alt+.>    --//顯示9,回車執行.
--//最後一步可以使用<alt+.>顯示最後一個參數.我個人很少使用這個功能,我喜歡在inputrc定義<insert>鍵抽取最後1個參數。
"\e[2~": yank-last-arg        # insert

--//有一些功能類似vim.比如
$ echo 0123456
--//想刪除123456 6個字元,可以這樣輸入:
<alt+6> <backspace>
<alt+-> 6 <del>
<alt+-> 6 <ctrl+d>
--//負數表示反向操作的意思。

--//鏈接上有一些介紹:
https://qastack.cn/programming/562115/press-alt-numeric-in-bash-and-you-get-arg-numeric-what-is-that

--//我前面的測試產生12個-.如果要實現輸入12個-加空格,如何操作呢?
$ seq 24 | paste - <alt+2><backspace> <alt+12><ctrl+y>

--// 先<alt+2><backspace> ,刪除"- ",記入緩存。
--// 然後<alt+12><ctrl+y>,抽取緩存12次。
--// 我的測試無效!!不知道那位有什麼好方法.
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 二、認識C++ 1、項目創建 1)創建項目 ①控制台應用 ②創建項目及解決方法 ③項目創建成功頁面 2、內容輸出 #include <iostream> int main() { std::cout << "認識C++\n"; //可以理解為把雙引號中的字元串,通過<<流入到了屏幕上 } "\n"表 ...
  • 今天記一個支付寶報錯“無效的AppID參數”的問題排查解決過程,希望可以幫到大家。 報錯產生 今天在測試支付寶用戶信息授權 換取授權訪問令牌 的時候,遇到了一個報錯:“無效的AppID參數”,本來以為是個簡單的問題,結果還是花了一點時間去找原因,找到最後發現是自己腦子瓦特了=。= 報錯截圖如下: 在 ...
  • Python中的 *號是一個特殊的符號,在其他編程語言中,它最廣為人知的用途就是作為乘法運算的符號。而在Python中,它的用途遠不止如此。 本文總結了Python中*號的所有用途,以供參考。 1. 算術運算 號用來做算術運算幾乎是所有編程語言採用的方法,在Python中,號可作為乘法運算和指數運算 ...
  • 分散式的思想在大量的數據處理操作方案中涌現了很多的解決方式。Java 是 90 年代出現的語言,在嵌入式移動領域和 web 系統 PC 端占據著較大的市場。移動安卓以及現在的企業H5 小程式,在企業的數字化轉型中起著十分重要的作用。 分散式微服務實現的框架是在 2017 年 springboot 開 ...
  • 常用的包 import torch import torchvision from torch import nn from torch.utils.data import DataLoader from torch.nn import Conv2d, MaxPool2d, Flatten, Lin ...
  • 在使用事務的時候需要添加@EnableTransactionManagement註解來開啟事務,Spring事務底層是通過AOP來實現的,所以啟用事務後,同樣會向容器中註入一個代理對象創建器,AOP使用的是AnnotationAwareAspectJAutoProxyCreator,事務使用的是In ...
  • 前言: 繼上篇:Taurus .Net Core 微服務開源框架:Admin 插件【4-3】 - 配置管理 - Mvc【Plugin-MicroService 微服務】 本篇繼續介紹下一個內容: 系統配置節點:Mvc - Plugin - CORS 跨域界面: 界面如下: 跨域功能相關配置說明如下: ...
  • 目錄 Welcome to YARP - 1.認識YARP並搭建反向代理服務 Welcome to YARP - 2.配置功能 2.1 - 配置文件(Configuration Files) 2.2 - 配置提供者(Configuration Providers) 2.3 - 配置過濾器(Confi ...
一周排行
    -Advertisement-
    Play Games
  • 隨著Aspire發佈preview5的發佈,Microsoft.Extensions.ServiceDiscovery隨之更新, 服務註冊發現這個屬於老掉牙的話題解決什麼問題就不贅述了,這裡主要講講Microsoft.Extensions.ServiceDiscovery(preview5)以及如何 ...
  • 概述:通過使用`SemaphoreSlim`,可以簡單而有效地限制非同步HTTP請求的併發量,確保在任何給定時間內不超過20個網頁同時下載。`ParallelOptions`不適用於非同步操作,但可考慮使用`Parallel.ForEach`,儘管在非同步場景中謹慎使用。 對於併發非同步 I/O 操作的數量 ...
  • 1.Linux上安裝Docken 伺服器系統版本以及內核版本:cat /etc/redhat-release 查看伺服器內核版本:uname -r 安裝依賴包:yum install -y yum-utils device-mapper-persistent-data lvm2 設置阿裡雲鏡像源:y ...
  • 概述:WPF界面綁定和渲染大量數據可能導致性能問題。通過啟用UI虛擬化、非同步載入和數據分頁,可以有效提高界面響應性能。以下是簡單示例演示這些優化方法。 在WPF中,當你嘗試綁定和渲染大量的數據項時,性能問題可能出現。以下是一些可能導致性能慢的原因以及優化方法: UI 虛擬化: WPF提供了虛擬化技術 ...
  • 引言 上一章節介紹了 TDD 的三大法則,今天我們講一下在單元測試中模擬對象的使用。 Fake Fake - Fake 是一個通用術語,可用於描述 stub或 mock 對象。 它是 stub 還是 mock 取決於使用它的上下文。 也就是說,Fake 可以是 stub 或 mock Mock - ...
  • 為.net6在CentOS7上面做準備,先在vmware虛擬機安裝CentOS 7.9 新建CentOS764位的系統 因為CentOS8不更新了,所以安裝7;簡單就一筆帶過了 選擇下載好的操作系統的iso文件,下載地址https://mirrors.aliyun.com/centos/7.9.20 ...
  • 經過前面幾篇的學習,我們瞭解到指令的大概分類,如:參數載入指令,該載入指令以 Ld 開頭,將參數載入到棧中,以便於後續執行操作命令。參數存儲指令,其指令以 St 開頭,將棧中的數據,存儲到指定的變數中,以方便後續使用。創建實例指令,其指令以 New 開頭,用於在運行時動態生成並初始化對象。方法調用指... ...
  • LiteDB 是一個輕量級的嵌入式 NoSQL 資料庫,其設計理念與 MongoDB 類似,但它是完全使用 C# 開發的,因此與 C# 應用程式的集成非常順暢。與 SQLite 相比,LiteDB 提供了 NoSQL(即鍵值對)的數據存儲方式,並且是一個開源且免費的項目。它適用於桌面、移動以及 We ...
  • 1 開源解析和拆分文檔 第三方的工具去對文件解析拆分,去將我們的文件內容給提取出來,並將我們的文檔內容去拆分成一個小的chunk。常見的PDF word mark down, JSON、HTML。都可以有很好的一些模塊去把這些文件去進行一個東西去提取。 優勢 支持豐富的文檔類型 每種文檔多樣化選擇 ...
  • OOM是什麼?英文全稱為 OutOfMemoryError(記憶體溢出錯誤)。當程式發生OOM時,如何去定位導致異常的代碼還是挺麻煩的。 要檢查OOM發生的原因,首先需要瞭解各種OOM情況下會報的異常信息。這樣能縮小排查範圍,再結合異常堆棧、heapDump文件、JVM分析工具和業務代碼來判斷具體是哪 ...