当前位置: 首页 > news >正文

[Linux]我在Linux世界觉醒了指令系统

一、用户

添加新用户                adduser <用户名>

更改密码                    passwd <用户名>

ssh登录                     ssh <用户名>@<公网IP>

显示当前用户            whoami

删除用户                    userdel -r <用户名>

清屏                           clear

登出                           logout

普通用户不能访问root用户和其他普通用户的家目录,root用户可以访问并操作所有用户的家目录

二、ls <选项> <目录或文件>

(list)

1.选项

(1)-a

列出当前目录下所有文件,包括以 ' . ' 开头的隐藏文件(all)

(2)-l

列出文件的详细信息

           ls -a -l  /  ll -a  /  ls -al  /  ls -la

以 ' . ' 开头的是隐藏目录或隐藏文件,一般不可见,用 -a 选项才可见

目录名/文件名前的都是该目录/文件的属性,d 开头表示是目录类型,- 表示是普通文件类型

(3)-d

列出当前目录本身

(4)-h

以K、M、G等显示文件大小

2.目录或文件

ls -a /root  /  ll /root  显示指定目录下的内容

/root/test/test.c 这是一个绝对路径,第一个 ' / ' 表示根目录

./test/test.c  /  ../root/test/test.c 这是相对路径,相对于root目录的test.c的路径

. 表示当前目录,.. 表示上级目录

根目录的上级目录是根目录自己

三、pwd

显示用户当前所在的目录

四、cd <目录名>

改变当前目录

Windows系统中,路径分隔符是 ' \ ' 反斜杠

Linux系统中,路径分隔符是 ' / ' 斜杠

cd .. 可以回到上级目录

cd -  回到cd指令上一次跳转到的目录

cd ~  回到当前用户的家目录

五、touch <选项> <文件名>

更改目录或文件的日期时间,包括存取时间和更改时间,或者新建一个文件。

六、mkdir <文件名>

新建一个目录

mkdir -p ./t1/t2/t3/t4  -p 选项可以新建一串目录

七、rmdir <目录名>

删除空目录

八、rm <选项> <目录或文件>

1.选项

(1)-r

递归式删除

(2)-f

强制删除(不问是否确定删除)

九、通配符*

* 表示任意内容

十、一些热键

1.tab

连按两次 tab 键可以匹配所有可能指令,当只有一个可能指令时会自动补齐

tab 键还可以补齐路径

什么都没输入时连按 tab 键,会显示出所有指令

2.^C

强制退出

3.^R

历史指令记录,根据之后输入的字符查找符合的历史命令

把光标移到命令上会复制一份命令到命令行,可以修改再次执行

4.^D

代表EOF,也可以代表 exit

十一、man

1.man

用户手册

2. man <指令>

查询指令说明

3.man <3> <C语言函数>

查询C语言函数说明

一共有 9 个手册

十二、gcc <.c文件> -o <程序名>

十三、cp <选项> <源文件> <新文件>

拷贝文件

拷贝目录加 -r

强制覆盖已有目录或文件加 -f (root用户仍然会询问是否覆盖)

当<新文件>已经存在时,会覆盖<新文件>

十四、mv

1.mv <原文件名> <新文件名>  重命名,若新文件名已存在,会询问是否覆盖,-f 强制覆盖

2.mv <目录或文件> <新路径>  把目录或文件移动到新路径

3.mv <目录或文件> <路径/新文件名>  移动并重命名

十五、cat [选项] <文件名>  / tac

查看文件内容

tac 逆序打印文件内容

cat 后如果什么都不加,效果是输入什么就输出什么,^D退出,^C强制退出

选项:

-n:显示行号

-s:把多个空行只显示为一个空行

-b:只对非空行显示行号

十六、echo  /  >

echo "sss"  向显示器文件写入 "sss"

echo "sss" > test.txt  创建并写入  /  清空文件原内容并重新写入

十七、重定向符号

>  输出重定向:> test.txt  test.txt内容被清空

>>  追加重定向:printf "aaaa\n" >> test.txt 在文件末尾追加内容

<  输入重定向:cat < test.c 从 test.c 文件中读取数据(默认是从键盘文件读取的)

十八、more、less

more log.txt 显示文件内容

回车向下滚动        ↑ ↓ 翻页        q 退出

less log.txt 显示文件内容

回车向下滚动        ↑ ↓ 上下滚动        q 退出

/999 在文件中向下搜索 999 ,按 n 重复前一个搜索,按 N 反向重复前一个搜索

?999 向上搜索

-i 忽略搜索时的大小写        -n 显示行号

十九、head、tail

head log.txt  /  tail log.txt  显示前 / 后 10 行内容

head -n30 log.txt  显示前30行,n可省略:head -50 log.txt

显示文件的第5000行到5020行的内容:head -5020 log.txt | tail -21

| 就是管道,管道就是文件

二十、date <选项> <格式>

1.选项

(1)-s

设置当前时间,需要root权限

date -s 19990101 设置时间为 1999 年 01 月 01 日 00:00:00

date -s 10:10:10 设置时间为 10:10:10,日期不变

date -s "19990101 10:10:10"   设置时间为 1999 年 01 月 01 日 10:10:10

date -s "1999-01-01 10:10:10" 设置时间为 1999 年 01 月 01 日 10:10:10

date -s "10:10:10 19990101"   设置时间为 1999 年 01 月 01 日 10:10:10

date -s "10:10:10 1999-01-01" 设置时间为 1999 年 01 月 01 日 10:10:10

(2)-d

转换时间戳为正常时间(北京时间GMT+8)

2.格式

%H 小时        %M 分钟        %S 秒        %X 相当于 %H:%M:%S

%Y 年            %m 月            %d 日        %F 相当于 %Y-%m-%d

%s 时间戳

二十一、cal

cal 显示当月日历

cal 2020 显示 2020 年日历

cal -3 显示当年当月,以及当月前后月,共三个月的日历

二十二、find、which

1.find

find <路径> -name <文件名>  在指定路径下查找所有严格符合名称的文件

find <路径> -name <文件名1> -o <文件名2> 查找符合文件名1或文件名2的文件

2.which

which <指令名>  查找指令

二十三、alias

给指令起别名        alias ll="ls -a -l"

这个别名是内存级的,重新登录后会失效

指令选项  --color=auto

二十四、grep <选项> <字符串> <文件>

在文件中搜索字符串,并将找到的行打印出来

-i:忽略字符串的大小写

-n:显示行号

-v:反向选择,打印不含字符串的行

二十五、zip、unzip

压缩文件 / 解压压缩包 .zip

zip <压缩包名> <源目录或文件>

zip -r <压缩包名> <源目录或文件> 打包文件时加 r,递归式打包

unzip <压缩包名>

unzip <压缩包名> -d <路径>  把压缩包解压到指定路径下

二十六、tar

-c:起始压缩指令                          -x:起始解压指令                             -t:查看 tarfile 里面的文件

-z:用 gzip 压缩                             -j:用 bzip2 压缩                              -v:显示 压缩 / 解压 过程

-f:指定压缩文件名,之后不可再附加其他参数,必须跟上压缩文件名

-C:解压到指定目录

tar -xvzf log.tgz -C <路径>  解压到指定路径下

二十七、bc

计算器        输入 quit 或 ^D 退出

echo "1+2+3+4+5" | bc  可以把计算交给bc

二十八、uname [选项]

显示电脑和操作系统的信息

-a:内核名称 主机名称 内核版本号 内核版本 硬件名 处理器类型 硬件平台类型 操作系统名称

二十九、shutdown [选项]

-h:将系统的服务停掉后,立即关机

-r:将系统的服务停掉后,重新启动

-t:后面加秒数,表示几秒后关机

相关文章:

  • JavaScript基础-创建对象的三种方式
  • 【C++重载操作符与转换】文本查询示例
  • 数据库故障排查指南:解决常见问题,保障数据安全与稳定
  • 数据分析_Python
  • PyTorch实现三元组损失Triplet Loss
  • 为什么 Docker 建议关闭 Swap
  • 基于多头自注意力机制(MHSA)增强的YOLOv11主干网络—面向高精度目标检测的结构创新与性能优化
  • Elasticsearch Fetch阶段面试题
  • Springboot构建项目时lombok不生效
  • 51单片机仿真突然出问题
  • Almalinux中出现ens33 ethernet 未托管 -- lo loopback 未托管 --如何处理:
  • 提示词定制-AI写方案太泛?用“5W1H”提问法,细节拉满!
  • 售前工作.工作流程和工具
  • 【八股战神篇】Java集合高频面试题
  • nodejs快速入门到精通1
  • C++:C++内存管理
  • 题单:表达式求值1
  • 什么是差分传输?
  • 信任的进阶:LEI与vLEI协同推进跨境支付体系变革
  • 深入理解构造函数,析构函数
  • 复旦建校120周年大型义诊举行,百余名专家服务市民超三千人次
  • 嫩黑线货物列车脱轨致1名路外人员死亡,3人被采取刑事强制措施
  • 病重老人取钱在银行门口去世,家属:已协商一致
  • 定制基因编辑疗法治愈罕见遗传病患儿
  • 华东政法与复旦上医签署合作框架协议,医学与法学如何交叉融合?
  • 申论|空间更新结合“青银共生”,助力青年发展型城区建设