古早Linux命令行笔记

this is written in md
source: https://linuxtools-rst.readthedocs.io/zh_CN/latest/base/01_use_man.html

写在前面

初学Linux时记的笔记,但看一圈下来,感觉还是直接在Ubuntu上开发一个项目上手来得快…

Linux Learn Notes

Linux Foundation

Help

1
whatis info man which whereis

Files

  • 创建:mkdir
  • 删除:rm
  • 删除非空目录:rm -rf file目录
  • 删除日志 rm log (等价: $find ./ -name “*log” -exec rm {} ;)
  • 移动:mv
  • 复制:cp (复制目录:cp -r )

复制目录:

1
cp -r source_dir  dest_dir
  • 找到文件/目录位置:cd
  • 切换到上一个工作目录: cd -
  • 切换到home目录: cd or cd ~
  • 显示当前路径: pwd
  • 更改当前工作路径为path: $cd path
1
2
3
ls -lrt # list, sort by time
alias lsl='ls -lrt'
alias lm='ls -al|more'

给每项文件前面增加一个id编号(看上去更加整洁):

1
2
`>ls | cat -n
1 a 2 a.out 3 app 4 b 5 bin 6 config`

搜寻文件或目录:
$find ./ -name “core*” | xargs file

查找目标文件夹中是否有obj文件:
$find ./ -name ‘*.o’

递归当前目录及子目录删除所有.o文件:
$find ./ -name “*.o” -exec rm {} ;

(more recommended: fd)
(regex syntax: https://docs.rs/regex/1.0.0/regex/#syntax)
(https://github.com/sharkdp/fd#how-to-use)
(https://regex101.com/ online tests)

查看文件:cat vi head tail more

显示时同时显示行号:
$cat -n

按页显示列表内容:
$ls -al | more

只看前10行:
$head -10 test.cpp

显示文件第一行:
$head -1 filename

显示文件倒数第五行:
$tail -5 filename

查看两个文件间的差别:
$diff file1 file2

动态显示文本最新信息:
$tail -f crawler.log

改变文件的拥有者 chown
改变文件读、写、执行等属性 chmod
递归子目录修改: chown -R tuxapp source/
增加脚本可执行权限: chmod a+x myscript

创建符号链接/硬链接:

1
2
ln cc ccAgain # :硬连接;删除一个,将仍能找到;
ln -s cc ccTo # :符号链接(软链接);删除源,另一个无法使用;(后面一个ccTo 为新建的文件)

批处理命令连接执行,使用 |
串联: 使用分号 ;
前面成功,则执行后面一条,否则,不执行:&&
前面失败,则后一条执行: ||
ls /proc && echo suss! || echo failed. # install with remind

重定向:
ls proc/.c > list 2> &l 将标准输出和标准错误重定向到同一文件;
等价的是:
ls proc/
.c &> list

清空文件:
:> a.txt

重定向:
echo aa >> a.txt

快捷键:

Ctl-U 删除光标到行首的所有字符,在某些设置下,删除全行
Ctl-W 删除当前光标到前边的最近一个空格之间的字符
Ctl-H backspace,删除光标前边的字符
Ctl-R 匹配最相近的一个文件,然后输出

查找record.log中包含AAA,但不包含BBB的记录的总数:

cat -v record.log | grep AAA | grep -v BBB | wc -l

文件管理,目录的创建、删除、查询、管理: mkdir rm mv

文件的查询和检索: find locate

查看文件内容:cat vi tail more

管道和重定向: ; | && >

text

su - 切换用户


古早Linux命令行笔记
http://baokker.github.io/2022/08/07/古早Linux命令行笔记/
作者
Baokker
发布于
2022年8月7日
更新于
2022年8月17日
许可协议