文武全才的兔八哥 发表于 2024-8-4 07:54:36

熟练使用linux常用基本命令梳理汇总

目录<ul>Linux基本命令<ul>
简单认识shell
认识命令的基本格式:
内建命令与外部命令
查看命令的类型-type
查看命令的使用方法-help
mkdir
pwd
touch
echo
认识路径
ls
cd
认识热键/linux热键
tree
nano
cat
gcc
stat
rm
rmdir
基本认识--创建目录权限
linux有多少条指令
man
sudo
cp
mv
wc
> 和 >>
<a target="_blank" href="https://www.cnblogs.com/#_" rel="noopener nofollow"> 文件 //清空文件再写入,'w'认识路径

# 命令 -[命令选项] ...ls

显示目录中文件及其属性信息
# type: type [-afptP] 命令 cd

cd = change directory
# help 内建命令认识热键/linux热键

热键:高频被使用的按键
linux中一个热键就是tab键
# ls --helptree

tree是一个把指定目录以树的形式组织并输出到终端的命令,这个命令一般的linux中都需要用户主动安装
# mkdir 目录名//创建目录(linux)/文件夹(win)
# mkdir -p d1/d2/d3/...   //创建一串路径/目录; 递归创建多个目录nano

文本编辑器nano
# pwd//显式当前目录的绝对路径cat

在终端设备上显示文件内容
# touch        文件名.后缀          //创建普通文件
# touch 已存在文件                                         //更新Atime、Ctime高级用法
# echo "字符串" > 文件 //清空文件再写入,'w'gcc

gcc是c语言编译器,可以用于编译c代码
$ 以.开头的文件/目录是隐藏文件/目录
$ / 为linux下的根,linux下为目录为蓝色(centos7-shell)

# .//当前路径
# .. //上级路径
# C:\Users\26390\Desktop //windows下的路径,(反斜杠) \ : 路径分割符
# /root/test             //linux下的路径,      (斜杠) / : 路径分隔符

$ windows下文件夹内可以有新的文件夹,linux下目录内可以有新的目录 -- 所以linux的根 / 和路径分隔符 / 不冲突
$ linux整体是一个多叉树的样子/结构


$ windows通过路径来定位文件/文件夹,linux也是如此.
为什么呢? > 任何一个目录都可以有多个子目录,但一个子目录只有一个父目录 -->因此一条路径能唯一标识一目录/文件
$ 路径分为1.绝对路径 2.相对路径(相对是相对于当前路径,如果当前路径改变了,则相对路径也会发生改变 ->失效)

$ 绝对路径使用场景:准确但麻烦,一般是在某些配置环境中,进行对某种文件进行配置时采用!
$ 相对路径使用场景:用起来简单,是后序指令操作时,常用的路径定位方案!stat

获取文件的属性信息
# ls -l(l:list) //以list的形式显式更多的属性

# ls -t                                //按时间先后排序
# ls -rt                                 //按时间先后逆序排序

# ls -ul//以uid形式显式属性

# ls -ld /   //只显示路径,不显示内容

# ll -h// h:human_readable//人类可读的 -- 即显示大小,kb,Mb,...rm

# cd ~//进入/home目录
$ 超级用户/管理员root的~独立位于/root
$ 普通用户的~都位于/home底下 -- ~称为普通用户的家目录
$ window也有家目录,位于C:\Users ,

# cd -   //回到上一次访问的目录# 快速双击tab键-->命令的自动补齐:1.显式出匹配的所有命名 2.显示出匹配目录下的所有文件
# 不想进入目录又想查看其他目录有哪些文件 --> 无脑 tab../../../../rmdir

# tree [空] / [.] / [..] / [其他目录]   //以树的形式把指定目录打印出来,不加命令选项默认是当前目录


$ -bash: tree: command not found         //说明没有tree命令
解决方法:root下# yum install -y tree//如果是Ubuntu,则是# apt-get install -y tree基本认识--创建目录权限

普通用户只能在 /home/自己/... 内创建文件 ,root在哪里都可以创建
linux有多少条指令

输入框为空时按一下table可以显式当前linux系统有多少条指令 -- 阿里云轻量应用级有1265条左右
man

man命令:打开C/C++/系统调用等 语法手册
# nano 文件//使用nano编辑器打开文件
$ nano :nano是Unix/Linux下的一个文本编辑器
nano编辑器的快捷键使用
Ctrl+G 帮助
Ctrl+X 退出
Ctrl+O 保存
Ctrl+R 复制指定文件内容
Ctrl+W 查找
Ctrl+\ 替换
Ctrl+K 剪切
Ctrl+U 粘贴
Ctrl+J 调整段落
Ctrl+T 检查拼写
Ctrl+C 光标位置信息
Ctrl+Shift+_ 跳转到指定行
Alt+U 撤销
Alt+E 反撤销
Alt+A 从光标位置开始标记/选择
Alt+6 复制
Ctrl+3 & Shift+3 显示行号
//nano不能用数字小键盘,只能用数字横键盘
//cancel :取消man命令选项:
# cat 文件// 打印/显式文件内容
$ 将[文件]或标准输入组合输出到标准输出。sudo

授权普通用户执行管理员命令
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   显示此帮助信息并退出
      --version输出版本信息并退出
如果[文件]缺省,或者[文件]为 - ,则读取标准输入。cp

拷贝 copy
# gcc .c文件 //编译.c文件,默认得到a.out可执行文件 //可执行文件是绿色
# ./a.out    //执行可执行文件,执行a.out文件-- 可执行文件在linux下必须带./命令选项可以放中间也可以放在最后 // 最好保持放中间,有些系统不支持,如mac
mv


[*]move:移动
# stat 文件//获取文件的属性信息
$ 任何文件都有三种时间:A.C.M.时间:1.Access(访问) 2.Modify(内容) 3.Change(属性)
$ ll显式的时间是M时间

[*]文件重命名
# rm空目录/文件   //删除文件或空目录
# rm -f 空目录/文件 //删除文件或空目录--- 不提示/不通知
# rm -r 目录/文件   //递归删除目录内的所有文件/目录
# rm -rf 目录/文件//强制递归删除目录内的所有文件/目录 -- 不提示/不通知/不需要确认/什么都能删,只要权限够 直接删完

[*]文件移动+重命名
# rm * -rf       //把当前目录的所有文件删掉 -- 不带路径默认为当前目录 --'*' ,linux通配符,代表所有文件
# rm *.后缀 -rf//把带有相同后缀的文件全部删除
$ 通配符:可以匹配上任意个数的任意字符

[*]目录重命名
# rmdir 目录   //删除目录,只能删除非空目录 -- 也没有支持递归删除的命令选项,所以目前没什么用
//rmdir:failed to remove :删除失败
$ 为什么要有 -- 如果有一个文件和目录同名,想删目录可以用rmdir 或 rm -r 目录, 想删文件用rm(默认删的就是文件) --这样就区分开来

[*]目录剪切+重命名
安装man手册
# yum install -y man-pages //安装man手册

基本使用
# man [号] xx//搜索[几号]man手册并进入,没有号码则默认搜索全部
# man man //打开man手册首页

如果man2,3查不到,尝试安装
# yum install -y man-pages.noarch

//man 2 一般是系统调用
//man 3 一般是C库



   


linux下一切皆文件,键盘,显示器...可以读,可以写都是文件
wc

word cound
# -k 或 --apropos:用于搜索手册页面的简要描述。例如,man -k keyword会搜索包含关键字的手册页面的简要描述。
    //可以搜索包含关键字的句子 所在的手册页
   
# -f 或 --whatis:用于查找手册页面的简要描述,类似于-k选项。
    //只搜索目录,和直接man搜索一样,显示所在的手册页
   
# -p 或 --pager:指定用于查看手册页面的分页器(pager),默认情况下使用less。
    //man -p less ls
    //就是选择什么文档查看器来看文档
   
# -S 或 --sections:指定要查看的手册部分。默认情况下,man会搜索所有部分,但你可以使用此选项来指定特定部分。
    //就是man 3 printf 的简写> 和 >>

> 为输出重定向
>>为追加重定向
# sudo 命令//命令提权
页: [1]
查看完整版本: 熟练使用linux常用基本命令梳理汇总