[Linux]VI-經典用法FAQ

來源:互聯網
上載者:User
0.0 - 引言 -- 我怎樣用這個FAQ

這個文檔分為了幾個部分.首先,第0節和第1節介紹了什麼是vi;第2節則收錄了很多新
  學者的問題,一些對vi沒有很多經驗的人也經常問這些問題.這裡麵包括諸如“命令模式和插入
  模式之間的區別”,以及“我怎樣拷貝和粘貼”之類的問題.第3節是面向vi的中級使用者的,它從
  問題“我如何尋找和替換”開始,逐步深入,直到對vi裡面的宏(Macro)的用法討論為止.第3
  節還包括了一個vi的快速參考,有一個規範的vi命令列表.再下面,是一個有關“:set”命令的
  列表,包含了所有能定製vi環境的變數,這些變數也可以在.exrc檔案中定義.

我們已經在一個運行SunOS和UCB版本vi的機器上驗證了快速參考.除了SunOS帶的vi外,
  每個命令都可以在系統V和UCB版本vi運行,但是我個人並沒有驗證這一點.

除非我們在文檔中指明,預設我們假定你處在命令模式下.

我們還嘗試保留儘可能多的術語,因為在原始的vi文檔中使用了這些術語,儘管我可能
  忘了它的本來含義.

如果你使用了全球資訊網(WWW)來閱讀FAQ,你可以在以下地址找到這個FAQ:
  http://bbs.cn90.net/read.php?tid=14596&page=1

0.1 - 索引

第一個檔案:

0.0 - 引言 -- 我怎樣用這個FAQ?
  0.1 - 索引
  0.2 - 我可以散發這個FAQ嗎?
  0.3 - 你能為這個FAQ做什嗎?

1.0 - 什麼是vi?
  1.1 - 關於vi有什麼重大的交易嗎? 為什麼大家都用它? 更進一步說,為什麼我要用它?
  1.2 - 噢! 這聽起來不錯! 有沒有理由不用vi?
  1.3 - vi能在多少不同的作業系統下面運行?
  1.4 - 好吧, 你說服了我. 我決定開始使用vi. 我該從哪兒開始?
  1.5 - vi有其他一些可用的變種嗎?

2.0 - vi入門
  2.1 - 有什麼遊戲協助我們學習vi嗎?
  2.2 - 命令模式和插入模式有什麼區別?
  2.3 - 等等,我的鍵盤沒有鍵,我該怎麼辦?
  2.4 - 那些~s是什麼東西?
  2.5 - 我無法習慣用 hjkl, 你有什麼建議嗎?
  2.6 - 我如何才能不存檔就退出?
  2.7 - 我怎樣插入一個檔案?
  2.8 - 我怎樣尋找文本?
  2.9 - 我怎樣搜尋一個控制序列?
  2.10 - 我怎樣重新格式化文本?
  2.11 - 我怎樣複製文本?
  2.12 - 啊! 我剛才敲了一個dG,然後我的論文就沒有了! 我該怎麼辦?
  (或者,我剛才犯了個錯誤,我該怎麼辦?)
  2.13 - 我正在寫我的論文,被告知我必須將每一節都放在不同的檔案裡,我該怎麼辦?
  2.14 - 所有的:命令都是怎樣處理的?

3.0 - 怎樣尋找和替換?
  3.1 - 我怎樣在vi中運行一個程式?
  3.2 - 啊! 我正在寫我的論文, 系統崩潰了! 怎麼辦?
  3.3 - 有沒有使vi對程式員更友好的竅門?
  3.4 - 宏 -- 我怎樣寫宏?
  3.5 - 我怎樣將一個功能鍵定義成一個宏?
  3.6 - 有沒有辦法縮寫文本?
  3.7 - 我怎樣在當前文檔中做拼字檢查?
  3.8 - 我手頭有一個硬拷貝的終端, 我還能用vi嗎?
  3.9 - 好了,是不是處在開放模式下的原因呀?! 但是我現在沒有用硬拷貝終端,它還是在
  開放模式呀?

第二個檔案:

4.0 - vi檔案的線上協助在哪兒?
  5.0 - 好玩的vi訣竅,無聊的宏
  5.1 - 好玩的vi訣竅
  5.2 - 好玩的宏
  6.0 - 依字母順序的vi快速參考
  6.1 - 命令模式的輸入選項(:命令)
  6.2 - 設定選項(set)
  7.0 - 建立 .exrc檔案
  7.1 - .exrc檔案的樣本
  8.0 - vi的漏洞
  9.0 - 術語表
  10.0 - 關於vi的參考書目

0.2 - 我可以散發這個FAQ嗎?

可以!只要你沒有對它做任何修改,或者用它來賺錢.

0.3 - 你能為這個FAQ做什嗎?
  首先, 把你發現的錯誤告訴我. 如果你有什麼建議我們也很歡迎. 你認為還不清楚的地方
  告訴我們,我們同樣歡迎.
  還有, 使用vi! (Spread the word) 我很抱歉我無法將所有對這個FAQ有貢獻的人都列出
  來, 因為許許多多的人都給過我建議和協助,如果我將他們都列出來的話,那麼恐怕這張貢獻
  者的清單將和這個文檔本身一樣長了.

1.0 - 什麼是vi?
  vi是個可視化的編輯器(vi就意味著可視化--VIsual). 那麼,什麼是可視化的編輯器呢?
  (相對於非可視化的編輯器來說)?可視化的編輯器就是可以讓你在編輯文本的時候看到它們.
  今天,這聽起來似乎非常普通,反之,非可視化的編輯器似乎很奇怪. 非可視化的編輯器的例子
  可以舉出不少:如ed, sed和edlin(直到相當近的一段時間內,它是DOS內建的最後一個編輯器)
  等.
  vi是威廉.僑伊寫的,作為BSD UNIX的一部分. 後來AT&T也開始用vi, 於是標準UNIX也開始
  用vi了.

1.1 - 關於vi有什麼重大的交易嗎? 為什麼大家都用它? 更進一步說,為什麼我要用它?
  vi是UNIX下面的預設編輯器, 因此幾乎近來所有的UNIX都捆綁了vi(近來是指1984年左右).
  這意味著無論何時你跨平台使用某種UNIX,你都知道在你指尖下面有一個強力的編輯器.為什麼
  不是別的呢? vi是個強大的編輯器.同樣,一旦你瞭解了vi,你就能很快的編輯你的檔案,因為它
  非常能節省你的敲鍵次數. 由於它在插入和命令兩種情況下使用不同的模式,它比大多數的不
  基於這種模式的編輯器要快. 而且,vi非常小(我機器上面的版本只有200K).還有,vi幾乎能做
  任何事,只要你知道如何使它做你想做的事.

1.2 - 噢! 這聽起來不錯! 有沒有理由不用vi?
  有. 有一個非常好的理由: vi稍微有些難學, 如果你開始學的話,vi又慢又讓人痛苦,
  當然,一旦你學會了, vi就快多了. 但是學習的過程很慢. 有人曾經問我, 如果vi是個比較
  易學的編輯器, 它是否直觀(intuitive)呢? 我一般這樣回答:/"是的,我們有些人是這樣認為.
  但是大多數人認為我們瘋了./"

1.3 - vi能在多少不同的作業系統下面運行?
  UNIX. 就是它. 儘管如此,還是有很多vi的變種運行在不同的作業系統上. 我就在以下一些
  作業系統上用過vi: UNIX, DOS, OS/2, MAC SYSTEM 7.(後面有一個有關細節的列表)

1.4 - 好吧, 你說服了我. 我決定開始使用vi. 我該從哪兒開始?
  好吧, 狡猾的傢伙. 關於vi有很多很好的書:大多數講UNIX的書至少有一章給了vi,而且
  有不少是專門講vi的書.我沒有什麼偏愛. 所以你最好是問問你們那兒的vi高手們他們是從
  哪兒學來的. 還有,到處試. 用vi開啟一個不重要的文檔(你的論文不象是個學vi的好實驗品),
  然後再到處試. 我無法想象有人學習vi卻不花相當多的時間去到處試試. 記住:如果你有些
  地方不明白了, 只要敲兩次鍵,你就又回到命令模式下了.
  我要提到的一點是,我想在這裡提比較合適,就是如果要成為系統管理員或者其他對UNIX配置
  做什麼修改的話,最好是學學ed或者ex,因為有些版本的UNIX沒有把vi放在根分區裡面,這樣你
  就可能無計可施了. ed是個不錯的選擇.

1.5 - vi有其他一些可用的變種嗎?
  只能列出一部分:STvi (STevie), elvis, vile, vim, 和nvi, xvi.
  elvis適用於:Amiga, DOS, OS/2, Unix, VMS, Atari.
  STevie適用於: Atari ST, DOS, Unix, Mac System 7.
  Mac System 7可以在很多info-mac的鏡象網站擷取,在/info-mac/text下.
  (例如ftp.hawaii.edu)
  nvi是將和BSD 4.4捆綁在一起的vi.
  vim適用於: Amiga, DOS, Mac System 7, Unix.
  Amiga, DOS,和源碼可以在以下網站換取:ftp.fu-berlin.de /misc/editors/vim
  Mac System 7可以在很多info-mac的鏡象網站擷取,在/info-mac/text下.
  (例如ftp.hawaii.edu)
  vile適用於: DOS, OS/2, Unix, VMS.
  xvi適用於: DOS, Unix.
  vi的變種之間很有很多差異.很多都改進了vi,大多數都可以使用在這個文檔
  種列出的命令,但是有一些不同的地方.更進一步的細節,你可以參考這些變種
  附帶的相應的文檔.

2.0 - vi入門
  對vi的初學者來說,有些基本的提示.第一,任何時候,手頭都要有一份命令摘要.
  我們將在後面給出一個快速參考/命令摘要. 第二, 找一本vi方面的比較好的書.
  這個文檔不是學vi的最佳途徑(最起碼現在還不是),我不敢保證這個文檔能教會一個
  對vi一無所知的人, 而很多書已經做到了這一點. 但是,我們這裡還是給出了不少
  提示. 對選擇書籍來說,有一個標準的原則:買之前一定要仔細閱讀. 要瞭解這本書
  對你是否有意義.確信它能在你練習vi的時候有用. 和其他的書做個比較 -- 不管怎樣,
  vi可能讓你感到非常莫名其妙, 而且你要確信這麼一點:是書讓你糊塗,而不是
  你低估了學vi的難度.
  還有, 找一些諸如/"學vi/"(vilearn),/"vi嚮導/"(vitutor)之類的軟體來協助你掌握
  vi的基本知識.

2.1 - 有什麼遊戲協助我們學習vi嗎?
  這似乎很無聊, 但是事實上UNIX系統裡面有不少遊戲可以協助你學習使用vi.這些協助
  主要是一些基本知識. 雖然我還不知道有哪個遊戲可以幫你學習vi的所有命令, 但我
  確實知道有一些可以協助你學習使用 hjkl來移動游標. NetHack,一個類Rogue的遊戲,
  就對這非常有協助. 而且它是一個很大的遊戲,能玩很長一段時間. 我沒有貶低其他遊戲
  的意思,這些遊戲是: rogue, moria, omega, worm, snake.

2.2 - 命令模式和插入模式有什麼區別?
  vi將命令模式和插入模式區分開來,這經常被認為是vi的一個大問題,但往往這也被認為是
  vi的優勢所在. 理解其中的區別是掌握vi的關鍵.vi啟動時,開始處於命令模式;在這種模式
  下,我們可以在檔案中到處移動,改變文本的某個特定地區, 剪下, 複製和粘貼文本,還有更
  多. 插入模式是指使用者可以真正插入文本.換句話說,命令模式是用來在檔案中移動,而插入
  模式是用來在檔案中鍵入文本.
  有些命令,例如: a, i, c, C, O, o和其他一些可以從命令模式切換到插入模式.
  鍵或者^C(CRTL+C)可以脫離插入模式而返回到命令模式.
  你要適應這種差別. 它使得vi區別於其他的編輯器. 它也使你能在你的手不離開標準
  鍵盤做很多事情.

2.3 - 等等,我的鍵盤沒有鍵,我該怎麼辦?
  試試敲 ^[(CTRL+[). 如果你的鍵盤有一個鍵,再試試它.如果還不行,再試試^3.

2.4 - 那些~s是什麼東西?
  它們僅僅是用來讓你知道你的文檔末尾在哪兒.實際上它們並不在你的文檔裡面,所以
  你用不著擔心它們.

2.5 - 我無法習慣用 hjkl, 你有什麼建議嗎?
  首先,如果你的終端設定正確而且你串連的也沒有問題的話,你可以使用方向鍵.但是,
  如果你認為你要經常使用vi,那麼最好是習慣使用 hjkl,因為它們敲起來更快. 而且,
  有時候串連出問題了,使得ESC序列都可能丟失了.(這樣你可能就無法使用方向鍵了--譯註)

2.6 - 我如何才能不存檔就退出?
  :q!可以做到這一點. 如果vi看起來凍住了,確信你沒有錯敲了個 ^S. 敲^Q可以解開^S.

2.7 - 我怎樣插入一個檔案?
  :r
  例如,要插入檔案/etc/motd, 可以敲 :r /etc/motd.
  這將把檔案插入到游標處.如果你在r前面指定了一個數字,那麼這條命令將把檔案插入
  到那個位置.

2.8 - 我怎樣尋找文本?
  /將向前尋找, ?將向後尋找. ??或者//將重複上次尋找. 在UNIX下,這已經
  是個可愛的標準用法了. 而且, 在vi中, n將尋找文本下一次的出現位置. N重複上次尋找,
  不過逆轉了尋找的方向. 在尋找中可以使用規範式.

2.9 - 我怎樣搜尋一個控制序列?
  /^V^
  ^V會告訴vi照字面理解下一個字元,不要把它看作是一條命令.

2.10 - 我怎樣重新格式化文本?
  如果你的電腦有一個名叫fmt的程式, 你要做的僅僅是在命令模式下面敲!}fmt(記住,
  不要在前面加:). 這可以重新格式化你的檔案,從游標所在的位置一直到當前段落的結尾.
  如果你的機器裡面沒有fmt這個程式, 你就得去找個類似的軟體了(我記得在公用域裡面有
  不少這樣的程式,但是我對此瞭解不多)

2.11 - 我怎樣複製文本?
  這有點複雜.把這節拿出來,多看幾遍;還有,一定要多做實驗.
  /"yy可以把一行文本拷貝到寄存器中(這裡的寄存器是vi的術語,指可以存放剪下和
  拷貝下來的東西的地方), 裡面的字母必須是a到z之間的一個. /"dd可以把一行
  剪下下來放到寄存器裡面. 你可以在yy或者dd前面用數字指明要拷貝或者剪下的行數.如果
  中的字母是大寫的話,意味著把文本插入到寄存器中已有的文本之前.
  /"p把文本插入到游標之後,/"P把文本插入到游標之前.如果寄存器中含有某
  一行的開頭或結尾,這一行將會被放到另一合適的行上. Y是yy的捷徑. 還有, y$, yH,
  yM,等等,都是可以用的.d命令也是一樣的.如果要快速的剪下和粘貼, 你就無須指定寄存器
  了.如果這樣的話,你就不能往寄存器裡面添加文本了.而且只要有一個刪除命令的話,寄存器
  中的東西就沒有了(包括x命令).
  舉例來說,如果要移動上一段的話,你可以把游標移到段落的開頭,敲/"a13dd,再把游標移到
  你想要放文本的地方,敲/"ap,就可以把那段文本放到游標所在的行後面.
  現在,大概你想要剪下和粘貼文本到不是行末尾的地區去.我們來看如何做到這一點:我們
  可以使用 m 命令來標記一個地區,這個字母可以和剪下/粘貼寄存器的字母相同,因為
  它們是儲存在記憶體中的不同位置. 然後,敲/"`[yy或者dd], 這裡的寄存器就是
  要儲存文本的那個寄存器,是用來標記的,yy和dd是你的操作.

2.12 - 啊! 我剛才敲了一個dG,然後我的論文就沒有了! 我該怎麼辦?
  (或者,我剛才犯了個錯誤,我該怎麼辦?)
  u可以撤消你剛才的操作.U可以撤消你對當前行的修改(當然,一行對於一篇論文來說當然
  很不夠了). :e!可以不儲存修改而重新把你的檔案調進來. 還有,你刪除的文本都儲存在從
  0到9編號的寄存器裡.所以,/"p就可以把上第n次的刪除文本粘貼出來.你可以按如下的
  方法迅速地查看所有刪除的文本. 先試一個,不對的話,敲u,再試下一個.(為加速這個過程,
  這時vi中的.命令和通常的用法不一樣了.它不是重複上次操作,而是試下一個寄存器,這樣
  你要做的無非就是: /"1p u . u .,直到你撤消了你想撤消的刪除操作)

2.13 - 我正在寫我的論文,被告知我必須將每一節都放在不同的檔案裡,我該怎麼辦?
  :[m],[n]w 可以將從第m行到第n行之間的文本儲存到所指定的檔案中.
  這種行序號方法幾乎在所有的:命令下都可以使用. 如果你用命令:[m],[n] w >>,
  這些文本將添加到檔案的後面.

2.14 - 所有的:命令都是怎樣處理的?
  :後面的命令都是從ex編輯器裡面過來的. 這就給vi加入了很多靈活性,也使vi功能更強
  大. 例如, 有很多的方法可以用來尋找和替換,它們有很多的類似地方(事實上,它們在某種
  意義上說都是一樣的)

  3.0 - 怎樣尋找和替換?
  有很多方法. 最簡單的是:
  :s/old/new/g, 但是,這僅對當前行起作用..., 所以,我們用
  :%s/old/new/g, 更一般的,我們還可以用
  :[範圍]s/old/new/[cg],這裡,[範圍]是任意的行範圍,包括行號,$(檔案末尾),.(當前行),
  %(當前檔案),或者兩個行號之間加個破折號(或者可以這樣: .,+5,這表示下面5行).[cgi]是
  c,g,i中間的一個或者什麼也沒有.c告訴vi每次替換的時候要給提示,g是說對所有一行中出現
  的地方都做替換.i則是指在尋找時不區分大小寫.如果最後一個斜杠(/)後面沒有東西的話,那
  麼vi只替換在行中第一次匹配的地方.
  我比較喜歡這樣做:
  :g/foobar/s/bar/baz/g, 這個命令首先搜尋foobar,然後把它變成foobaz. 它沒有改變
  jailbars, 而其他的一些命令可能會改變jailbars. 這是我的方法,但是可能比較難記.
  當然,你還可以在尋找的的時候使用正規式,以及在替換文本的時候使用其他一些命令.如果
  你在正規式裡用(和)來剝離一個序列的話,你會發現你可以做很多好玩的事情.
  例如:
  :g/(foo)(bar)/s/2/1baz/g 將foobar替換成foobaz
  還有一些特殊的序列:
  & 所有尋找時匹配到的東西
  [1-9] 1到9號用(和)括起來的東西
  u 下一個字元將被變成大寫.
  U 以後的字元都變成大寫,直到遇到e或E
  l 下一個字元將被變成小寫.
  L 以後的字元都變成大寫,直到遇到e或E
  [Ee] 更改大小寫選擇地區的終點

3.1 - 我怎樣在vi中運行一個程式?
  :!命令 可以在vi中運行程式. :sh會啟動一個互動外殼(SHELL).在這個外殼
  裡面, 如果你願意,你還可以再次運行vi. 當你在編輯Makefiles和設定檔來編譯
  某個程式的時候,這可能比較有用. 這比:e優越之處在於它無須儲存檔案,而且如果
  你退出外殼的時候,vi還回到原來的地方.(當然,我還是建議你先儲存一下檔案)

3.2 - 啊! 我正在寫我的論文, 系統崩潰了! 怎麼辦?
  不要怕! 你會收到一封電子郵件,裡面就是你的論文.敲入vi -r
  (這個檔案名稱就是系統崩潰時你正在編輯的檔案)你就可以恢複出你的論文來.只敲
  vi -r將把所有可能恢複的檔案都列出來.

3.3 - 有沒有使vi對程式員更友好的竅門?
  :set ai可以讓vi自動對齊.
  :set sw=#,#是移動的寬度(shiftwidth),或者說TAB鍵的寬度(tabwidth);你可以
  用>命令來左移或右移某一行. 還有, 你可以使用 %來將{,(或[等符號
  括起來的文本都左移或右移;這時候,你必須把游標放在這些符號({,(或[)上面.
  :set sm會在你敲},]或)顯示出對應匹配的{,[或(來.
  :set lisp會對lisp編程有些協助. ()被移到s運算式(s-expressions)外面,如果
  原子(atoms)沒有停止則{}將被移走.

3.4 - 宏 -- 我怎樣寫宏?
  :map , 其中最多10個字元,最多100個字元. 以後,如果
  你敲了,vi就會用來取代它.所有的宏都是在命令模式下開始的,但是可以
  在你想在的模式下終止. 記住,在你想用的控制字元前面加上^V.
  :unmap 將刪除這個宏. :map! 使得將插入到文檔
  中去.

3.5 - 我怎樣將一個功能鍵定義成一個宏?
  如果是#n,n是0-9之間的一個數,那麼這個宏就映射成某一個功能鍵了.(你
  可以試一下F1-F10之間的鍵--譯者)

3.6 - 有沒有辦法縮寫文本?
  當然了. 這可是vi呀,它能做任何事情!
  :ab email ellidz@midway.uchicago.edu 可以在你敲完email後,把那個沒有縮寫
  的文本插入到檔案中. :una email取消縮寫.

3.7 - 我怎樣在當前文檔中做拼字檢查?
  這兒有一個宏可以做到這一點. 這些應該放在你的.exrc檔案中(後面我們將對.exrc
  進一步討論). 它是一個相當簡單的宏. 它僅僅是調用ispell來處理當前檔案.當然,你
  的系統裡面一定得有ispell這個程式. 使用它的時候,只需要敲個V鍵就行了(因為vi並
  沒有用V,所以V是一個比較合適的鍵)

map V :w^M:!ispell % ^M:e!^M^M

第二個^M使你在拼字檢查完之後無須敲斷行符號就可以到vi中.
  (譯註, 在我的系統裡,沒有ispell,只有spell,我用它替換了ispell,工作的不錯;還有,
  ^M不是兩個字元,而是一個字元,通過^V^M敲進去的;另外,我個人認為第二個^M還是不要
  的好,因為直接回到vi後你就無法看到拼字檢查的結果了)

3.8 - 我手頭有一個硬拷貝的終端, 我還能用vi嗎?
  好了,好了. 我並認為有人會真的問這個問題.這個問題太偏了,我們大可不必理
  它.(而且,它回答了一個非常普通的問題)
  vi啟動的時候處於一種特殊的模式下面,叫做/"開放模式/"; 在這種狀態下,事情或多或少
  的有些不同. 刪除的字元在你面前顯示成一些/,vi會認為你的終端視窗只有一行. ^r
  可以把當前行重新輸出. z則把當前行周圍的視窗重畫一遍.

3.9 - 好了,是不是處在開放模式下的原因呀?! 但是我現在沒有用硬拷貝終端,它還是在開放
  模式呀?
  這兒的問題就是vi沒有認出你用的終端的類型. 於是它假定你有的是個最爛的終端,
  所以它決定依然處在開放模式下.這似乎沒什麼用處.因為沒有多少人喜歡開放模式,但是開放
  模式還是需要知道你的終端的一些最起碼的資訊的.
  現在,我們來看如何解決這個問題.我們有可能把它分成幾種特殊的情形,但是,一般情況下,
  這並沒有用處. 如果你直到你的終端的類型, 你可以在UNIX提示符下面設定終端類型(在CSH
  及其變種下面,使用命令setenv TERM ;在SH及其變種下面,使用命令TERM=;
  export TERM)
  最好你能把上面的命令寫在.profile檔案或者.cshrc檔案裡面,這樣你一登入它就自動地給
  你設定好了.(當然,你應該知道如何使用ed,或者你能在UNIX提示符下面設定好終端類型以便能
  使用vi, 這樣你才有可能去編輯這些檔案)
  如果你確實不知道你地終端類型,試一試vt100.現在大多數地終端或者終端模擬器都能模擬
  vt100. 如果這還不能生效的話,你只好去找個高手來幫你了.
 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.