A. 有什麼排版軟體是for linux的
linux 下的排版實在是強大,不友好, 哎, 所見即所得的排版工具實在太少, 如果不談字處理類的OOo的話 我所知的只有一樣 LyX 一個LaTEX的圖形前端 ,可以輸出 pdf,ps,tex格式的文檔 http://www.lyx.org/ http://www.lyx.org/Screenshots
B. linux小技巧
我有vim的,都是自己平時用的時候積累的,現在第一次放出。
1 2 啟動Vim時的選項 vim -c cmd file: 在打開文件前,先執行指定的命令;vim -r file: 恢復上次異常退出的文件;vim -R file: 以只讀的方式打開文件;vim -y num file: 將編輯窗口的大小設為num行;vim + file: 從文件的末尾開始;vim +num file: 從第num行開始;
Contents 2 3 游標的移動 h: 左移一個字元;l: 右移一個字元;j: 下移一個字元;k: 上移一個字元;w: 前移一個單詞,游標停在下一個單詞開頭;e: 前移一個單詞,游標停在下一個單詞末尾;b: 後移一個單詞,游標停在上一個單詞開頭;ge: 後移一個單詞,游標停在上一個單詞末尾;fc: 把游標移到同一行的下一個c字元處上面的操作都可以配合n使用,比如在正常模式(下面會講到)下輸入3h,則游標向左移動3個字元。
0或^:移動到行首。$: 移動到行尾。gg: 到文件頭部。G: 到文件尾部。nG: 到文件第n行。:n<cr> 移動到第n行。:$<cr> 移動到最後一行。n|: 把游標移到遞n列上。+或Enter:把游標移至下一行第一個非空白字元。-: 把游標移至上一行第一個非空白字元。H: 把游標移到屏幕最頂端一行。L: 把游標移到屏幕最底端一行。ctrl+f: 下翻一屏。ctrl+b: 上翻一屏。ctrl+d: 下翻半屏。ctrl+u: 上翻半屏。Contents 3 4 Vim的幾種模式 正常模式:可以使用快捷鍵命令,或按:輸入命令行。插入模式:可以輸入文本,在正常模式下,按i、a、o等都可以進入插入模式。可視模式:正常模式下按v可以進入可視模式,在可視模式下,移動游標可以選擇文本。塊選擇模式:正常模式下按ctrl+v進入。替換模式:正常模式下,按R進入。Contents 4 5 插入 i: 在游標前插入;I: 在當前行最前插入;a: 在游標後插入;A: 在當前行最後插入;o: 在下面新建一行插入;O: 在上面新建一行插入;:r filename 在當前位置插入另一個文件的內容。:r !date 在游標處插入當前日期與時間。同理,:r!command可以將其它shell命令的輸出插入當前文檔。Contents 5 6 改寫 c[n]w: 改寫游標後1(n)個詞。c[n]l: 改寫游標後n個字母。c[n]h: 改寫游標前n個字母。[n]cc: 修改當前[n]行。[n]s: 以輸入的文本替代游標之後1(n)個字元,相當於c[n]l。[n]S: 刪除指定數目的行,並以所輸入文本代替之。注意,類似cnw,dnw,ynw的形式同樣可以寫為ncw,ndw,nyw。Contents 6 7 替換 r: 替換游標處的字元,同樣支持漢字。R: 進入替換模式,按esc回到正常模式。Contents 7 8 撤消與重做 [n] u: 取消一(n)個改動。ctrl + r: 重做最後的改動。U: 取消當前行中所有的改動。Contents 8 9 剪切和復制、粘貼 [n]x: 剪切游標右邊n個字元,相當於d[n]l。[n]X: 剪切游標左邊n個字元,相當於d[n]h。y: 復制在可視模式下選中的文本。yy or Y: 復制整行文本。 yy 是復制一行文本的命令,則5yy 表示復制從前行開始的5行y[n]w: 復制一(n)個詞。y[n]l: 復制游標右邊1(n)個字元。y[n]h: 復制游標左邊1(n)個字元。y$: 從游標當前位置復制到行尾。y0: 從游標當前位置復制到行首。:m,ny<cr> 復制m行到n行的內容。y1G或ygg:復制游標以上的所有行。yG: 復制游標以下的所有行。d: 刪除(剪切)在可視模式下選中的文本。d$ or D: 刪除(剪切)當前位置到行尾的內容。d[n]w: 刪除(剪切)1(n)個單詞d[n]l: 刪除(剪切)游標右邊1(n)個字元。d[n]h: 刪除(剪切)游標左邊1(n)個字元。d0: 刪除(剪切)當前位置到行首的內容[n] dd: 刪除(剪切)1(n)行。:m,nd<cr> 剪切m行到n行的內容。d1G或dgg:剪切游標以上的所有行。dG: 剪切游標以下的所有行。p: 在游標之後粘貼。P: 在游標之前粘貼。Contents 9 10 查找和替換 /something: 在後面的文本中查找something。?something: 在前面的文本中查找something。n: 向後查找下一個。N: 向前查找下一個。:s/old/new: 用new替換當前行第一個old。:s/old/new/g: 用new替換當前行所有的old。:n1,n2s/old/new/g: 用new替換文件n1行到n2行所有的old。:%s/old/new/g: 用new替換文件中所有的old。:%s/^/xxx/g: 在每一行的行首插入xxx,^表示行首。:%s/$/xxx/g: 在每一行的行尾插入xxx,^表示行尾。所有替換命令末尾加上c,每個替換都將需要用戶確認。如:%s/old/new/gc%: 找到對應的([{.Contents 10 11 多行縮進縮出 正常模式下,按兩下>;游標所在行會縮進。如果先按了n,再按兩下>;,游標以下的n行會縮進。對應的,按兩下<;,游標所在行會縮出。如果在編輯代碼文件,可以用=進行調整。在可視模式下,選擇要調整的代碼塊,按=,代碼會按書寫規則縮排好。或者n=,調整n行代碼的縮排。Contents 11 12 打開和關閉文檔 :e file –關閉當前編輯的文件,並開啟新的文件。如果對當前文件的修改未保存,vi會警告。:e! file –放棄對當前文件的修改,編輯新的文件。:e+file – 開始新的文件,並從文件尾開始編輯。:e+n file – 開始新的文件,並從第n行開始編輯。:enew –編譯一個未命名的新文檔。:e – 重新載入當前文檔。:e! – 重新載入當前文檔,並丟棄已做的改動。:w – 保存修改。:n1,n2w filename – 選擇性保存從某n1行到另n2行的內容。:wq – 保存並退出。:x – 保存並退出。:saveas newfilename – 另存為Contents 12 13 多標簽編輯 :tabe filename – 在新的標簽中打開一個文件。:tabn – 切換到下一個標簽。:tabp – 切換到上一個標簽。Contents 13 14 分屏編輯Contents 13.1 14.1 水平分割 :split(:sp) – 把當前窗水平分割成兩個窗口。:split filename – 水平分割窗口,並在新窗口中顯示另一個文件。:nsplit(:nsp) – 水平分割出一個n行高的窗口。:new – 水平分割出一個窗口,並編輯一個新文件。ctrl+w + –當前窗口增高一行。也可以用n增高n行。ctrl+w - –當前窗口減小一行。也可以用n減小n行。ctrl+w _ –當前窗口擴展到盡可能的大。n ctrl+w _ – 當前窗口的高度設定為n行。Contents 13.2 14.2 垂直分割 :vsplit(:vsp) – 把當前窗口分割成水平分布的兩個窗口。:vnew – 垂直分割出一個新窗口。:vertical 水平分割的命令:相應的垂直分割。Contents 13.3 14.3 關閉子窗口 :qall – 關閉所有窗口,退出vim。:wall – 保存所有修改過的窗口。:only – 只保留當前窗口,關閉其它窗口。:close – 關閉當前窗口。(象 :q :x同樣工作 )Contents 13.4 14.4 切換和移動窗口 [如果支持滑鼠,切換和調整子窗口的大小就簡單了。]ctrl+w ctrl+w: 切換到下一個窗口。或者是ctrl+ww。ctrl+w h(l,j,k):切換到左(右,下,上)的窗口。ctrl+w t(b):切換到最上(下)面的窗口。<BR>ctrl+w H(L,K,J): 將當前窗口移動到最左(右、上、下)面。正因為vim強大的分屏功能,我們可以把vim打造成功能強大的IDE。Contents 14 15 一次編輯多個文件 我們可以一次打開多個文件,如vi a.txt b.txt c.txt 使用:next(:n)編輯下一個文件。使用:previous編輯上一個文件。使用:wnext,保存當前文件,並編輯下一個文件。使用:wprevious,保存當前文件,並編輯上一個文件。使用:args顯示文件列表。Contents 15 16 文件的編碼 :e ++enc=utf8 filename, 讓vim用utf-8的編碼打開這個文件。:w ++enc=gbk,不管當前文件什麼編碼,把它轉存成gbk編碼。:set fenc或:setfileencoding,查看當前文件的編碼。在vimrc中添加setfileencoding=utf-8,cp936,ucs-bom,vim會根據要打開的文件選擇合適的編碼。注意:編碼之間不要留空格。cp936對應於gbk編碼。ucs-bom對應於windows下的文件格式。讓vim正確處理文件格式和文件編碼,有賴於~/.vimrc的正確配置。Contents 16 17 執行命令 :! cmd 執行外部命令。:!! 執行上一次的外部命令。@: 重復上一次的冒號命令。:sh 調用shell,用exit返回vim。:r !cmd 將命令的返回結果插入文件當前位置。:m,nw !cmd 將文件的m行到n行之間的內容做為命令輸入執行命令。Contents 17 18 一些快捷鍵(收集中) K: 打開游標所在詞的manpage。*: 向下搜索游標所在詞。#: 向上搜索游標所在詞。~: 反轉游標所在字元的大小寫。%: 移動到匹配的(),{}或[]上。 Contents 18 19.多行縮進
按v進入visual狀態,選擇多行,用>或<縮進或縮出
通常根據語言特徵使用自動縮進排版:在命令狀態下對當前行用== (連按=兩次), 或對多行用n==(n是自然數)表示自動縮進從當前行起的下面n行。你可以試試把代碼縮進任意打亂再用n==排版,相當於一般IDE里的code format。使用gg=G可對整篇代碼進行排版。
1、交換兩個字元位置xp;
上下兩行調換ddp;
上下兩行合並 J;
從當前位置復制到行尾y$
如果要粘貼到其他地方 p 就可以了
刪除所有行 dG
從當前位置刪除到行尾d$
2、:X
保存後就加密了
:X
然後系統會提示輸入密碼
輸入密碼後存檔退出
下次編輯時請使用
vi -x filename
系統會提示你輸入密碼,呵呵
例:以HP-UX為例
a、加密
vi file
:X
(Are you sure?(y/n)[n]:)回答y
輸入密碼回車以後再保存,就加密成功了
b、解密
vi -C file 或者 vi -x file
在 Key: 後面輸入密碼進入file
:X
(Are you sure?(y/n)[n]:)回答y「
vim在默認的情況下,用/或?來查找字元串時,是區分大小寫的,有時候很不方便。
我們可以用
:set ic
這樣vim就不區分大小寫了。
如果我們像區分大小寫
:set noic
set tabstop=4
set shiftwidth=4
set softtabstop=4
set expandtab
Contents 19 VIM宏的錄制和使用: Running a macro: @q
Viewing a macro: :registers | :reg m
Saving a macro: let @a='0fa' 也可以加到.vimrc中
Recording a macro: q<letter><commands>q
Execute a macro: <number>@<letter>http://vim.wikia.com/wiki/Macros
Contents 20 如何快速從正文復制一段字元到Vim命令行?
先 yank
然後 ctrl+r "
詳見 :help :
Contents 21 shell 下匹配中文的搜索
:vimgrep /[^\x00-\xff]/g /app/www/gamelive/default.sdo.com/public/api/**/*.php
//把^去掉則匹配任意英文字元(非中文字元)
:cnext (:cn)
:cprevious (:cp)
:cwindow (:cw)
比如命令:
:vimgrep /an error/ *.c
就是在所有的.c文件中搜索an error。
:vimgrep/an error/*
意思是查找當前目錄下的文件中的an error,不包括子目錄
:vimgrep/an error/**
查找當前目錄並且包括遞歸子目錄下的所有文件
:vimgrep/an error/**/*.php
查找當前目錄並且包括遞歸子目錄下的所有PHP
vimgrep會產生一個error list,其實就是搜索結果列表。並會打開第一個符合的文件中第一個符合的位置。
Contents 22 以16進制編輯 首先,打開二進制文件時要加參數"-b",不然會報文件第一行錯誤.
$vim -b tuxcmd
打開文件後,默認是文本格式的,我們用":%!xxd"可以切換到十六進制編輯.
:%!xxd
是不是和utaredit很像呀?還可以加上參數-c來設置每行顯示多少位元組,比方用":%!xxd -c 16",就會顯示成16位元組一行.
如果用":%!od"命令,則會隱藏左側的文本列.
不過,有一點不爽的就是改變文本列,不會改變16進制里的數據,只能手動在16進制列做修改.在文本列里的修改是不會生效的.
注意:修改完成後,不要保存,要再用":%!xxd -r"切換成文本狀態格式再保存.
:%!xxd -r
匹配括弧匹配:
% 可以讓游標從它當前所在的括弧跳轉到與它相匹配的括弧上去, 對花括弧和
圓括弧, 方括弧都有效, 常用於手工檢查括弧是否匹對.
緩沖文件切換:
map <F12> <ESC>:bp<RETURN> " right arrow (normal mode) switches buffers (excluding minibuf)
"map <F12> :TlistToggle<CR>
"map <C-right> <ESC>:bn<RETURN> " right arrow (normal mode) switches buffers (excluding minibuf)
"map <C-left> <ESC>:bp<RETURN> " left arrow (normal mode) switches buffers (excluding minibuf)
C. Linux下vi編輯器是干什麼的
由加州大學伯克利分校,Bill Joy 研究開發。
文本編輯器有很多,比如圖形模式的gedit、kwrite、OpenOffice,文本模式下的編輯器有vi、vim(vi的增強版本)。vi和vim是我們在Linux中最常用的編輯器。vi或vim是Linux最基本的文本編輯工具,vi或vim雖然沒有圖形界面編輯器那樣點滑鼠的簡單操作,但vi編輯器在系統管理、伺服器管理字元界面中,永遠不是圖形界面的編輯器能比的。
(注意:vi是unix/linux操作系統中最經典的文本編輯器,只能是編輯字元,不能對字體、段落進行排版;它既可以新建文件,也可以編輯文件;它沒有菜單,只有命令,且命令繁多。
雖然vi的操作方式與其他常用的文本編輯器(如gedit)很不相同
,但是由於其運行於字元界面,並可用於所有unix/linux環境,仍被經常使用。)
vi 的三種命令模式
Command(命令)模式,用於輸入命令
Insert(插入)模式,用於插入文本
Visual(可視)模式,用於視化的的高亮並選定正文
D. Linux 命令 格式 (命令的詳細,排列,順序,樣式。。。。)
樓上說的是linux中help的使用方法,使用man命令和參數可以查詢到樓主提問的所有問題。
常見的列文件和目錄:dir和list
排序:需要使用參數
樣式:需要使用參數
任何命令後跟--help 會列出所有的參數的使用方法的。另外linux有命令提示功能,例如按d後再按tab鍵2下,那麼所有d開頭的命令都會羅列出來。然後用--help參數看使用方法即可。
E. 請推薦一款linux下的排版軟體
linux 下的排版實在是強大,不友好, 哎, 所見即所得的排版工具實在太少, 如果不談字處理類的OOo的話 我所知的只有一樣
LyX 一個LaTEX的圖形前端 ,可以輸出 pdf,ps,tex格式的文檔
http://www.lyx.org/
http://www.lyx.org/Screenshots
F. 想用linux下的腳本重新排版點陣字型檔文件,但不知道怎麼獲取漢字的內碼
#!/bin/bash
str='測試'
bytes=`echo$str|wc-c`
letchars=bytes/2
echo$str|od-x-w2|head-n$chars|awk'{print$2}'
運行結果:
e2b2
d4ca
G. 哪個linux shell腳本高手能把這段腳本排版下並且說明下意思
FDYWEF N
GJ;/gYJ
; GHyj<yj
LRU,JYLM,YGTDYHNTYJH
H. linux ls命令的排版演算法是怎樣的
英文全名:List即列表的意思。
1.
ls -a 列出文件下所有的文件,包括以「.「開頭的隱藏文件(linux下文件隱藏文件是以.開頭的,如果存在..代表存在著父目錄)。
2. ls -l
列出文件的詳細信息,如創建者,創建時間,文件的讀寫許可權列表等等。
3. ls -F
在每一個文件的末尾加上一個字元說明該文件的類型。"@"表示符號鏈接、"|"表示FIFOS、"/"表示目錄、"="表示套接字。
4. ls -s
在每個文件的後面列印出文件的大小。 size(大小)
5. ls -t 按時間進行文件的排序 Time(時間)
6. ls -A
列出除了"."和".."以外的文件。
7. ls -R 將目錄下所有的子目錄的文件都列出來,相當於我們編程中的「遞歸」實現
8. ls -L
列出文件的鏈接名。Link(鏈接)
9. ls -S 以文件的大小進行排序
以上是一些關於ls命令的一些用法,當然還有好多沒有列出來,大家可以man一下。有助於學習英文
ls可以結合管道符」|「來進行一下復雜的操作。比如:
ls | less用於實現文件列表的分頁,ls
計算當前目錄下的文件數量
ls -|*|grep "^-"| wc
-|
ls命令是linux下最常用的命令。ls命令就是list的縮寫預設下ls用來列印出當前目錄的清單如果ls指定其他目錄那麼就會顯示指定目錄里的文件及文件夾清單。
通過ls 命令不僅可以查看linux文件夾包含的文件而且可以查看文件許可權(包括目錄、文件夾、文件許可權)查看目錄信息等等。ls
命令在日常的linux操作中用的很多!
1. 命令格式:
ls [選項] [目錄名]
2. 命令功能:
列出目標目錄中所有的子目錄和文件。
3. 常用參數:
-a, –all 列出目錄下的所有文件,包括以 . 開頭的隱含文件
-A
同-a,但不列出「.」(表示當前目錄)和「..」(表示當前目錄的父目錄)。
-c 配合 -lt:根據 ctime 排序及顯示 ctime
(文件狀態最後更改的時間)配合 -l:顯示 ctime 但根據名稱排序否則:根據 ctime 排序
-C
每欄由上至下列出項目
–color[=WHEN] 控制是否使用色彩分辨文件。WHEN
可以是'never'、'always'或'auto'其中之一
-d, –directory 將目錄象文件一樣顯示,而不是顯示其下的文件。
-D,
–dired 產生適合 Emacs 的 dired 模式使用的結果
-f 對輸出的文件不進行排序,-aU 選項生效,-lst 選項失效
-g 類似
-l,但不列出所有者
-G, –no-group 不列出任何有關組的信息
-h, –human-readable 以容易理解的格式列出文件大小
(例如 1K 234M 2G)
–si 類似 -h,但文件大小取 1000 的次方而不是 1024
-H,
–dereference-command-line 使用命令列中的符號鏈接指示的真正目的地
–indicator-style=方式
指定在每個項目名稱後加上指示符號<方式>:none (默認),classify (-F),file-type (-p)
-i, –inode
印出每個文件的 inode 號
-I, –ignore=樣式 不印出任何符合 shell 萬用字元<樣式>的項目
-k 即
–block-size=1K,以 k 位元組的形式表示文件的大小。
-l 除了文件名之外,還將文件的許可權、所有者、文件大小等信息詳細列出來。
-L,
–dereference 當顯示符號鏈接的文件信息時,顯示符號鏈接所指示的對象而並非符號鏈接本身的信息
-m
所有項目以逗號分隔,並填滿整行行寬
-o 類似 -l,顯示文件的除組信息外的詳細信息。
-r, –reverse 依相反次序排列
-R,
–recursive 同時列出所有子目錄層
-s, –size 以塊大小為單位列出所有文件的大小
-S 根據文件大小排序
–sort=WORD 以下是可選用的 WORD
和它們代表的相應選項:
extension -X status -c
none -U time -t
size -S atime
-u
time -t access -u
version -v use -u
-t 以文件修改時間排序
-u 配合
-lt:顯示訪問時間而且依訪問時間排序
配合 -l:顯示訪問時間但根據名稱排序
否則:根據訪問時間排序
-U
不進行排序;依文件系統原有的次序列出項目
-v 根據版本進行排序
-w, –width=COLS 自行指定屏幕寬度而不使用目前的數值
-x
逐行列出項目而不是逐欄列出
-X 根據擴展名排序
-1 每行只列出一個文件
–help 顯示此幫助信息並離開
–version
顯示版本信息並離開
I. Linux的文檔排版和window10的一樣嗎,怎麼解決
這兩個系統的文檔排版應該是一樣的,都是可以用我們的歐德等等,其他的一些文字排版系統
J. 在linux終端下, oracle關於v$log視圖的排版
可以設置LINESIZE環境變數來控制行的顯示寬度
set linesize 999