linux命令制表符,linux常用命令用法

linux shell里,怎样敲入 制表符

1、对齐

创新互联专注于襄城网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供襄城营销型网站建设,襄城网站制作、襄城网页设计、襄城网站官网定制、小程序开发服务,打造襄城网络公司原创品牌,更为您提供襄城网站排名全网营销落地服务。

先输入选择题题干,然后只需对选择题选项所在段设置一个左对齐制表符,制表符所在位置可根据需要适当调整。设置完后输入选项A的内容,按键盘上的Tab键使插入点移至下一制表符所在位置后输入选项B的内容,按回车键。然后同理再输入选项C、D内容。下面其他段落无需重新设置,因为已将上段制表符沿用,如不再需要,只需将该制表符删除

2、在公式一般居中和但其标题需要靠右,通常是敲空格使他们到达位置,但是一旦公式长度发生变化,则需要重新调整。表格标题之间也存在这个问题。

解决方法:在两者之间按tab键敲入制表符,选定,然后点击页面左上角的制表位图标,切换到居有制表位,用鼠标在水平标尺上右边位置点一下,这样就放置了一个居右制表位在点击的地方,如果位置不合适还可以用鼠标拖动进行调节。

好处:在于自动靠右调节功能,不受文本和页面改变影响

制表位图标还有,悬挂,首行缩进,居中,居左等方式

Linux命令操作之cat与cut

本篇主题:详细学习介绍cat和cut命令

cat 是一个 文本文件****查看 和 连接 工具

语法结构:

$ cat [选项] [文件]

参数选项:

-A, --show-all 等价于 -vET

-b, --number-nonblank 对非空输出行编号

-e 等价于 -vE

-E, --show-ends 在每行结束处显示 $

-n, --number 对输出的所有行编号

-s, --squeeze-blank 不输出多行空行

-t 与 -vT 等价

-T, --show-tabs 将跳 字符显示为 ^I

-u (被忽略)

-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

--help 显示此帮助信息并离开

Cat主要有以下2大功能:

1、一次显示(查看)整个文件,cat后面直接接文件名。

$ cat filename

比如以下,查看profile文件, -n参数是显示 行

[root@localhost ~]# cat /etc/profile 注:查看/etc/目录下的profile文件内容;

[root@localhost ~]# cat -b /etc/fstab 注:查看/etc/目录下的profile内容,并且对非空白行进行编号,行号从1开始;

[root@localhost ~]# cat -n /etc/profile 注:对/etc目录中的profile的所有的行(包括空白行)进行编号输出显示;

[root@localhost ~]# cat -E /etc/profile 注:查看/etc/下的profile内容,并且在每行的结尾处附加 $ 符号;

cat 加参数-n 和nl工具差不多,文件内容输出的同时,都会在每行前面加上行号;

[root@localhost ~]# cat -n /etc/profile

[root@localhost ~]# nl /etc/profile

cat 可以同时显示多个文件的内容,比如我们可以在一个cat命令上同时显示两个文件的内容;

[root@localhost ~]# cat /etc/fstab /etc/profile

cat 对于内容极大的文件来说,可以通过管道 | 传送到more 工具,然后一页一页的查看;

[root@localhost ~]# cat /etc/fstab /etc/profile | more

2、cat 的创建、连接文件功能实例;

cat 有创建文件的功能,创建文件后,要以EOF或STOP结束;

[root@localhost ~]# cat linuxcat.txt EOF 注:创建linuxcat.txt文件;

如下图所示:

cat 还有向已存在的文件追加内容的功能;

[root@localhost ~]# cat linuxsir.txt EOF 注:我们向linuxcat.txt文件追加内容;

(注:这里发现被我写错了, EOF 写成了 OEF ,输出的时候要对应输出,咱不去究其原因)

cat 连接多个文件的内容并且输出到一个新文件中;

命令是:

[root@localhost ~]# cat name1 name2 name3 name4

注意: 其原理是把三个文件的内容连接起来,然后创建name4文件,并且把几个文件的内容同时写入name4中。 特别值得一提的是,如果您输入到一个已经存在的name4文件,会把name4内容清空。(****见文末例子****)

实例: 假设我们有sir01.txt、sir02.tx和sir03.txt ,并且内容如下;[root@localhost ~]# cat sir01.txt

123456

i am testing

[root@localhost ~]# cat sir02.txt

56789

BeiNan Tested

[root@localhost ~]# cat sir03.txt

09876

linuxsir.org testing

我想通过cat 把sir01.txt、sir02.txt及sir03.txt 三个文件连接在一起(也就是说把这三个文件的内容都接在一起)并输出到一个新的文件sir04.txt 中。

[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt** **sir04.txt

[root@localhost ~]# **more **sir04.txt

123456

i am testing

56789

BeiNan Tested

09876

linuxsir.org testing

cat 把一个或多个已存在的文件内容,追加到一个已存在的文件中

[root@localhost ~]# cat sir00.txt

linuxsir.org forever

[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt** **sir00.txt

[root@localhost ~]# cat sir00.txt

linuxsir.org forever

123456

i am testing

56789

BeiNan Tested

09876

linuxsir.org testing

警告:我们要知道********意思是创建,********是追加。千万不要弄混了。造成失误可不是闹着玩的;

cut是一个选取命令,就是将一段数据经过分析,取出我们想要的。一般来说,选取信息通常是针对“行”来进行分析的,并不是整篇信息分析的。

语法结构:

cut [-bn] [file] 或

cut [-c] [file] 或

cut [-df] [file]

选项参数:

-b :以 字节 为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。

-c :以 字符 为单位进行分割。

-d : 自定义分隔符 ,默认为制表符。

-f :与-d一起使用,指定显示哪个区域。

-n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的br /范围之内,该字符将被写出;否则,该字符将被排除。

使用说明:

cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。

如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。

上一篇中也说到cut的使用。

值得注意的是 '-' 表示的是一个区间, ‘,’ 表示的是单个字符

例子二: 以 ‘:’ 为分隔符,截取PATH环境变量第五个位置的字符

先来看看PATH变量存的内容是什么

[2013012974@teach shell]$ echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/2013012974/bin

截取的结果:

从上面的例子中可以看出,以':'为分隔符,第五个位置是/usr/local/sbin

好了现在清晰了,****Cat**** 和****Cut****你学到了没有?学到了分享一下啊!

Linux文本操作常用命令

在Linux系统里常用于文本查看、操作、统计的命令:

通过多敲键盘,形成手感 肌肉记忆 ,熟练掌握这些命令,在以后生信分析中游刃有余。以下是每个命令的详细的介绍(主要是跟着 生信技能树小郭老师 学习做的笔记)

接下来通过示例把10个命令的常用参数和用法展示出来:

参数的用法介绍:

注意事项:

用 cat 命令可以 查看文本 ,也可以 编辑文本 ,编辑文本要加 符号,退出时,另起一行,按 control C 退出

zcat可以查看压缩的文本文件,tac逆向查看

结合 管道符| 使用

head / tail -n :查看文件的前 / 后 n 行,默认 10 行 (在R语言里head和tail默认是前6行)。

less命令用得最多 ,more命令用得比较少

3.1 less命令

less [参数] 文件名

less命令重要的补充用法1 :

需要注意 退出 :只要使用less命令, 按q键

less命令重要的补充用法2 :

参数用法:

less命令 不加参数 查看文件:

less命令加 -N参数 查看文件:显示行号

less命令加 -S参数 查看文件:单行显示,非常规整

对比:less和cat命令显示文本行号的用法:less -N,cat -n

3.2 more命令

**more ** 逐页查看,按空格翻页,按回车换行 ,more命令一般很少用,熟练掌握less命令就好

查看压缩文件

wc 统计字符是也把换行符统计进去,但是别的命令不一定会把换行符算进去,。

常见参数:

切记:用less命令,按q退出

cut命令是按关键词来切的

常见参数:

排列前:

排列后:

解释:1和0比,1大;7和0比,7大…在sort字典排序里,100816比1737小,所以100816排在前面。

命令行查看一个表格结构时,因为制表符对齐的原因,出现一个错位的现象。还有 字典排序 可能和我们平时的认知不一样,所以 加上-n参数 , 让数值有数学意义上的大小来排序 。

uniq命令去重,只有两行出现重复,而且是相邻的两行,如果不相邻,即使出现两行一模一样,不会去重。

uniq命令通常和sort命令搭配使用

换其它文件试试

总之,uniq命令使用时经常和sort一起

常见参数:

常见用法1:

paste file1 file2

-s :按行合并 演示

常见用法2 : paste - -

常见参数:

要养成一个好习惯,原始数据不要轻易修改,修改的东西另外保存,文本保存用 (重定向)或是 (追加)

1. 用 less 查看 example.gtf ,然后管道符传递给 wc

2. 截取 example.gtf 第 9 列的内容

3. 在第2步的基础上截取分号分割的第1列

4. 在第3步的基础上排序、去重复并统计

5. 在第4步的基础上,将空格替换成制表符

补充小知识 :

清屏 :control L

查看历史(输入过的)命令 :history

Linux相关使用介绍

Linux命令分为内部命令(shell自带的命令)和外部命令(不是shell自带的命令,由用户安装),怎么鉴别是内部命令和外部命令呢?可以通过type命令来鉴别

什么是shell呢?shell是一个程序,常用的有bash shell,平时我们通过用户名和密码登录到linux,其实就是登录到bash shell程序,通过bash shell来操作linux内核

命令执行流程

那岂不是说使用外部命令效率会很慢吗?

其实一点都不慢,它会去PATH环境变量设置的一堆目录中查找

cd is a shell builtin 表示内部命令

ifconfig is hashed (/usr/sbin/ifconfig) 表示外部命令

cd命令切换文件夹

现在我们cd /usr/sbin

通过cat命令查看文件内容

通过cat ifconfig来查看ifconfig,发现是乱码文件

file命令查看文件类型

输入file ifconfig

从输出信息可以看出它是一个二进制可执行文件

whereis命令查看文件位置

find / -name jdk

echo命令用户打印信息,相当于java中的system.out.println

可以使用回车查看下一行、空格查看下一页、q退出

一般使用man查看外部命令,help查看内部命令

查看linux下的应用和应用的进程号

当我们在这个窗口中输入kill -9 1593的话,另外一个正在编辑文件的进程就会退出

在前面我们已经讲过,bash shell程序在执行命令的一个过程及原理,对于外部命令,它会去PATH这个环境变量中查找执行命令所在的路径,当然在去PATH中寻找之前会先去hash表中查找这个命令有没有执行过,执行过的话会记录在hash表中,则此次查找只需从hash表中就可以很方便的找到

查看分区信息 -h 表示文件大小后面会显示文件大小

查看文件的使用情况

使用man ls 查看ls命令的相关介绍

-a:可以查看隐藏文件

-l:以长列表的形式展示文件列表信息

第一位 -:表示文件,d表示文件夹,b表示块设备文件,c表示字符设备文件,p表示命令管道文件,s表示套接字文件, 从第二位开始往后数九位表示属主权限(每三位一组 rwx:读、写、执行),第11位表示的点表示分隔符,点后面的数字表示文件有几个硬连接,第一个root代表属主名,第二个root代表这个第一个root所在的组织,接下来的5表示文件大小,5后面的日期表示文件最后一次修改的时间, 1.txt代表的文件或文件夹的名称

小结:

切换文件目录

cd 文件路径

cd:切换到家目录

cd ~:回到家目录(也就是家目录)

cd ..:回到上一级目录

创建目录

mkdir 目录名

mkdir -p 目录名,级联创建目录

cp 被拷贝的文件(可以是路径加文件名) 拷贝到哪个位置

复制目录使用

cp -r 被拷贝的目录 目标位置

移动命令

mv 被移动的文件 目标位置+目标文件名

rm 文件名(此中方式的删除需要再输入 yes)

rm -f 文件名,无提示直接删除

rm -rf 文件夹

ln命令默认创建的是硬连接

ln profile a:将a硬连接到profile文件上,他们底层共用一个文件,删除他们之中任何一个

对另外一个没有影响,同时你也可以使用 ll -i命令查看文件编号

ln -s profile a:将a软连接到profile文件,当你访问a的时候会去访问profile,profile再访问底层文件,当将profile删除了之后a就无法访问了

一致时间、创建新文本

touch 已存在的文件:会将文件的访问时间、更新时间、改变时间(即上面stat中介绍的三个时间)变成一致

touch 不存在的文件:会创建一个新的文本

cat命令查看文件内容

cat 1.txt:查看单个文件内容

cat 1.txt 2.txt:查看多个文件

more 1.txt:以分页的形式查看文件内容,按空格:下一页,回车:下一行(注意它不能回看,回看的话只能用鼠标回轮)

less 1.txt:使用空格下一页, b看上一页, 回车看下一行

注意less的话会把整个文件内容加载到内存,如果文件比较大的话,建议使用more命令查看

head命令默认查看文件前10行内容, head 1.txt

head -5 1.txt:查看文件前5行的内容

tail命令默认查看文件后10行的内容 tail 1.txt

tail -5 1.txt:查看文件后5行内容

tail -f 1.txt:实时查看文件增量内容

cat b.txt | head -3:管道左边的命令会以输出流的形式交给管道右边的命令,管道右边以输入流的形式接收并且拼到命令的右边

注意:ls -l 不能接受前面的输出流,这个怎么办呢?可以通过xargs命令

vi文本编辑器末行模式的操作

set nu(number的缩写): 设置行号

set nonu(nonumber的缩写):取消行号

set readonly:设置为只读

n:往下查找

N:往上查找

n:往上查找

N:往下查找

一般我们会在/etc/profile文件中设置一些环境变量,但是在设置的时候可能没有记住目录,这时候我们可以使用如下方式

效果

格式 :s/str1/str2/gi

/ : 临近s命令的第一个字符边界字符,也可以是 @或#

g : 一行内全部替换

i : 忽略大小写

范围

n:行号

. :当前光标行

+n :偏移n行

-3

%:全文

全部删除 1,$d

删除前三行

删除倒数第2行

光标挪到最后一行 按下小写的p

效果图

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特殊字符、及这些特定字符的组合组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。

\ :转义字符

. :匹配任意单个字符

[1249a] :匹配中括号中任意字符

[^12] :匹配中括号中任意非1和2的字符

[a-k] :匹配中括号中任意a~k中的一个字符

^ :行首

$ :行尾

abc :单词首尾边界(匹配单词abc)

| :连接操作符

(,) : 选择操作符

\n :反向引用

? :匹配0到1次

在Linux中通过grep命令使用正则表达式来匹配信息

f :选择显示的列

s :不显示没有分隔符的行

d :自定义分隔符

n :按数值排序

r :倒序

t :自定义分隔符

K :选择排序列

u :合并相同行

f :忽略大小写

sed:行编辑器,以行为单位进行处理,可以将数据进行替换、删除、新增、选取等特定工作

sed [options] 'Command' file ...

-n :静默模式,不再默认显示模式空间(内存)中的内容

-i :直接修改原文件

-e SCRIPT :可以同时执行多个脚本

-f /PATH/TO/SED_SCRIPT

-r :表示使用扩展正则表达式

d :删除符合条件的行

p :显示符号条件的行

a \string :在指定的行后面追加新行,内容为string

\n :可以用于换行

i \string :在指定的行前面添加新行,内容为string

c :取代,c的后面可以接字符串

s /pattern/string/修饰符:查找并替换。默认只替换每行中第一次被模式匹配到的字符串

g :行内全局替换

i :忽略字符大小写

s///:s###,s@@@

(),\1,\2

sed "2p" ctxt

但是在执行下面的操作的时候文本中的内容都显示出来了,它的原理是,打印匹配的行,以及文本中所有的内容

注意:它删的是内存中的数据,而不是目标文件

sed -i "3d" ctxt

它的原理是先把内存中的第3行数据删除,然后再把内存中的数据写回原文件,这时原文件中的第三行就没有了

使用变量的形式

awk是一个强大的文本分析工具。

相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。

简单来说awk就是把文件逐行的读入,(空格,制表符)为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk -F '{pattern + action}' {filenames}

支持自定义分隔符,默认是以空格分隔的

支持正则表达式匹配

支持自定义变量,数组 a[1] a[tom] map(key)

支持内置变量

ARGC 命令行参数个数

ARGV 命令行参数排列

ENVIRON 支持队列中系统环境变量的使用

FILENAME awk浏览的文件名

FNR 浏览文件的记录数

FS 设置输入域分隔符,等价于命令行 -F选项

NF 浏览记录的域的个数

NR 已读的记录数

OFS 输出域分隔符

ORS 输出记录分隔符

RS 控制记录分隔符

支持函数

print、split、substr、sub、gsub

支持流程控制语句

if、while、do/while、for、break、continue

练习题

passwd文件内容解读:

passwd文件中每行由7个字段组成,字段与字段之间由:分隔,第一个字段代表用户名,第二个字段表示用户对应的加密后的密码,第三个字段表示userId,第四个字段表示groupId,第五个字段表示对用户的描述,第六个字段表示用户的家目录,第七个字段表示的是这个用户默认使用的shell

其中$0表示整行

统计报表:合计每人1月工资, 0:manager,1:worker

将awk后面的内容封装到一个文件中(封装的脚本要遵循一定的格式)

qqq文件的内容格式

工作中总结的常用linux命令(Ⅱ)

[1] 每两行合并在一起

@dahuawk 'ORS=NR%2?" ":"\n"{print}'

[2] 每三行合并在一起

@dahuawk 'ORS=NR%3?" ":"\n"{print}'

[3] 每四行合并在一起

@dahuawk 'ORS=NR%4?" ":"\n"{print}'

[4] 统计std cell和sRam占的面积

@dahusummaryReport

[5] 找出drc的port相关的数量

@dahucat postroute_opt.drc | grep -B1 Type: | grep -v Type: | grep "\[" |-

[6] 获得选中的pin的名字

@innovusdbget selected.name

[7]  对一个文件,多目标删除

@dahused -i 's/MODE1\|MODE2\|MODE3\|MODE4\|MODE5//g'

[8] 获得不规则fplan的坐标组

@innovusdbget top.fplan.boxes

[9] 在某个目录下找到带某个字符的文件[区分大小写]

@dahufind -iname "*tcic*"

[10] 在某个目录下,遍历所有文件内容,得到含有某个字符/字符串的行

@dahugrep -r 'insertion delay' ./

[11] 查看当前的INNOVUS版本号

@dahuecho $INVS_VER

[12] 替换某个目录下所有文件内容

@dahused -i"s/查找的内容/替换后的内容/g"`grep -rl"查找的内容"./`

[13] 在gui界面下highlight某条path

@dahu ctd_trace -from *  -to *  -color *

[14] 引用${REV},为什么采用大括号{}

为了防止引用造成后面错乱。

如:/fs/omp_com_03/RELEASE/top2hlb/R1/HLB_DEF/${REV}/${top}.def.gz

[15] 解压命令

gzip -d FileName.gz

[16] 换某个cell的坐标 {AAA, BBB}

@innovus dbset [dbget top.inst.name XXXXXXXX].pt_x AAA

@innovus dbset [dbget top.inst.name XXXXXXXX].pt_y BBB

@innovus zoomSelected

[17] 设置某一个cell不用

@innovus set_dont_touch BUFF false

@innovus set_dont_touch BUFF true

[18] 找某个性质

@innovus dbSet [].?h

[19] 删去空白行

vim 中:g/^s*$/d

简单解释一下:

g :全区命令

/ :分隔符

^s*$ :匹配空行,其中^表示行首,s表示空字符,包括空格和制表符,*重复0到n个前面的字符,$表示行尾。连起来就是匹配只有空字符的行,也就是空行。

/d :删除该行

[20] echo 写入带有双引号""的内容。

echo ‘ “AAAbbb” ’ 1.tcl

[21] echo 写入带有单引号‘’的内容。

echo “ ‘AAAbbb' ” 1.tcl

[22] keep CPU 数目

@innovussetMultiCpuUsage -localCpu 16

@innovushistory keep 999999

[23] 打开xlsm文件

openoffice.org 文件

[24] 显示clock path路径

@innovus report_timing -to XXX -path_type full_clock

[25]报出没有被约束到的path

@innovus report_timing -to XXX -uncounstrained

[26]报出穿过path中的某一点

@innovus report_timing -to XXX -view

view = MODE + corner

[27] vim 全选(高亮显示 ):按esc后,然后ggvG或者ggVG

[28]

linux命令中带个\t什么意思

Linux系统下\t参数是水平制表(制表符) ,就是键盘上的tab键的功能,代码案例分析:

echo -e "a\tb" 

#输出的就是a    b,a与b中间的空位就是水平制表(制表符)。

在linux下想从键盘输入制表符,需要同时按下Ctrl+v+tab 即可(或者用命令/t参数代替tab键的功能)。


文章名称:linux命令制表符,linux常用命令用法
分享网址:http://scyanting.com/article/hoosps.html