Linux基础
Linux系统简介
退出服务器:exit
文件结构:Linux中一切皆文件
/:根目录
/home/:用户家目录
. 当前目录
.. 上级目录
~ 家目录:每个用户的家目录都不同
/ 当“/”在最前面时才代表根目录,其他位置均为目录层级分隔符
命令格式
命令 参数 文件
command -options [parameter]
command:命令名,相应的单词或缩写
[]:代表有时可省略
-options:选项,用来对命令进行控制,也可省略 #两种格式:-h, --help
parameter:传给命令的参数,可以是零个、一个或多个
FILE要处理的文件
示例:
tar -zxvf Data.tar.gz
文件夹与文件管理命令
pwd ##print working directory 打印工作目录
ls ##list 列出
ls ## 列出当前目录的文件 ##list
ls -a ##列出全部文件,包括隐藏文件 ##all
ls -l ##列出目录的详细信息 ##long
ls -h ##将目录容量转换为人类易读的方式(KB,GB等) ##human
ls -S ##按文件大小排序 ##Size
ls -t ##按时间排序 ##time
ls -r ##倒序排序 ##reverse
ll ## ls -laF的简写 ll -thr
l ## ls -CF
la ## ls -A
ls ./ ## 同上,‘.’号代表当前目录
ls ./*txt ## 列出当前目录下以 txt 结尾的文件
ls ../ ## 列出上层目录的文件
ll ## ls -la 的简写
ls -lh / ## 列出根目录下文件的详细信息
cd ##change directory 切换目录
cd .. ## 切换到上层目录,相对路径
cd / ## 切换到根目录
cd /teach/ ## 切换到根目录下的teach,绝对路径
cd - ## 返回上一次的工作目录
cd ~ ## 回到用户家目录
cd ## 同上,回到用户家目录
mkdir ##make directory 创建一个新的目录(ies)
常见参数:mkdir -p FILE ##递归创建目录
touch ##创建文件
常见用法:touch FILE ##创建一个空文件
touch file{1..5} ##创建file1, file2, ..., file5
mv ##move 移动和重命名
常见用法:
mv 待移动文件 移动至目录
mv 待重命名文件 新文件名 ##目标文件夹不存在则为重命名
##文件-->文件 若新文件名已存在,将覆盖原本以该名命名的文件
rm ##remove 删除
常见参数:
-f ##force强制不显示警告信息
-i ##在删除前询问用户
-r ##递归删除文件夹
删库跑路命令 rm -rf /
cp ##copy and paste 拷贝粘贴
常见参数:-r ##copy directories recursively
常见用法:cp OPTION SOURCE DIRECTORY
tar ##tape archive 压缩或者解压文件
常见参数:
-c ##创建一个新的tar归档文件(创建压缩文件)
-x ##从已有tar归档文件中提取文件
-f ##输出结果到文件或设备
-v ##在处理文件时显示文件(显示处理进度)
-j ##将输出重定向给bzip2命令
-z ##将输出重定向给gzip命令
常见用法:
解压缩:tar 参数##-f必须在文件名前
tar -zxvf 待解压包
压缩:tar 参数 <压缩后文件名> 待压缩文件/目录
ln ##link 链接文件##分为软链接(常用)和硬链接(默认)
常见参数:不加参数即为硬链接
-s:软链接 ##类似快捷方式
常见用法:ln -s TARGET DIRECTORY
正则表达式
- 匹配任意多个字符(0到正无穷) ? 匹配任意单个字符
文件属性
drwxr-xr-x
(文件类型1)(所有者权限3)(同组人权限3)(其他人权限3)
文件类型:
d:代表目录
l:代表链接文件
-:代表普通文件
r:4 可读;w:2 可写;x:1 可执行
快捷键
TAB:补全
Ctrl U:剪切光标位置到行首的字符
Ctrl C:终止任务
Ctrl L:清屏
Ctrl E:回到行尾
Ctrl A:回到行首
Ctrl W:剪切一个单词
Ctrl Y:粘贴命令行剪切的内容
Ctrl Z:暂停任务
Ctrl K:剪切光标位置到行尾的字符
文本查看
cat:Concatnate ##查看文本文件内容,打印到屏幕
常见参数:
-A ##打印所有内容,包括特殊字符,如制表符
-n ##打印出所有行号;-b ##仅打印非空白行行号
常见用法:
cat > file ##>:重定向,创建新的文件file并写入内容,Ctrl C终止,会覆盖原有同名文件 cat >> file ##>>:追加,在文件file后追加写入内容,Ctrl C终止
其它:
zcat:可以查看压缩的文本文件
tac:逆向查看
head/tail
常用参数:
-n ##查看文件的前后n行,默认10行
用法:
cat <FILE> | head -n ## “|”:管道符
more/less
more:逐页查看,按空格翻页,按回车换行,按q退出
less:方向键查看文本内容;Enter向下移动一行;空格键翻页,按q退出
常用参数:
-N ##显示行号
-S ##单行显示
用法:
/keyword:查询关键词,N/n上下浏览关键词
zless:查看压缩文件
G/g:快速到文本结尾/开头
文本统计
wc:统计文本
常见参数:
-l ##统计行数
-w ##统计字符串数
-c ##统计字节数
##不加参数时三者都会出现
制表符等不可见字符依然计算字节数
cut:文本切割
常见参数:
-d:指定分隔符,默认t;
-f:输出哪几列(fields)
用法:
less -SN <FILE> | cut -f 1,3-5,7-
less -SN <FILE> | cut -d 'h' -f 1
sort: 排序
常见参数:
-n:从小到大进行排序
-V:字符串中含有数值时,按数值升序排序
-r:逆向排序
-k:按指定的某列排序
-t:指定分隔符
uniq:去除重复行
##只能去除相邻的重复行,记得和sort联用
常见参数:
-c:统计每个字符串连续出现的次数
paste:文本合并 ##只能做简单合并,默认按列合并
常见参数:
-d:指定分隔符
-s:按行合并 ##先转置后上下连接
常见用法:
paste file1 file2 ##cat file1 file2只能上下连接,paste则能左右合并,字符串中间以tab隔开
paste -d '@' file1 file2 ##以@取代tab进行合并
seq 20 | paste - - - - ##按顺序生成数列1-20,并按四列排序
tr:字符替换
常见用法:
tr '<pre>' '<dest>'
例如:
tr 'a-z' 'A-Z' ##将全部小写替换为大写
常见参数:
-d:删除指定字符 ##t:tab;n:回车 ##要加引号!
-s:缩减连续重复字符
计算(求和)
echo '1 1' | bc
验证文件
md5sum file > file.md5
当file和file.md5在同一个文件夹下
键入 md5sum -c file.md5即可验证
vim编辑器
vim FILENAME #进入命令模式
i-insert #进入编辑模式,ESC退出
: #进入末行模式,ESC退出
#末行模式下 wq - write & quit关闭文件
命令模式
移动:方向键或hjkl
行开头:^/0;行末尾:$
30j:向下移动30行(数字+方向键)
Ctrl f/b::上/下翻页
gg:文档第一行的第一个字符
G:快速到文档底部(或[])
快捷键:
x:剪切单个字符
10x:连续剪切10个字符(以行为单位,不足则停止)
dd:剪切所在行
10dd:剪切所在行及向下共10行
yy:复制光标所在行
10yy:复制所在行及向下共10行
p/P:在当前行的下面/上面粘贴内容
u:复原前一个操作(可连续撤销)
Ctrl r:重做上一个动作
命令模式
按i进入:从光标开始
按o进入:从当前行最后一个字符后开始
末行模式
命令模式下输入:进入
该模式下可以进行设置、查询、替换、保存、退出
:wq #保存并推出
:q #直接退出 #若发生修改则无法如此退出
:q! #不保存并退出
查询:
输入/KEYWORD #只显示关键词的第一个字符
n向下查找,N向上查找
替换:
:%s/原字符/新字符/g #全局替换
:s///g #替换光标所在行
:%s/// #替换每一行出现的第一次
:s/// #只替换光标所在行的第一次
set系列命令
:set nu #显示行号
:set nonu #取消显示行号
:set list #显示不可见字符(分辨制表符与空格)
:set nowrap #单行显示
:set ff=unix #将文件格式转换为unix格式
回车
不同系统对于回车键的设置不同:
Windows:rn ##dos
Mac:r ##mac
Linux:n ##unix
转换方法:
- Vim :set ff=unix
- dos2unix #无需进入vim dos2unix <file>
vim出现异常情况
使用vim编辑文件后会生成<filename>.swp
当多处编辑或异常断开时会有待处理的.swp文件
如果修改不重要可直接删除.swp文件
vim编辑器
vimtutor_zh_CN:查看帮助文档
引用自生信技能树