自用Linux基础命令

  • Linux指令其实本质上也是程序 ,所以就会有相应的文件, 即可执行程序

指令、命令、工具、程序本质都是可执行程序

命令

修改账户

1.新增 adduser name
2.密码 password name
3.删除 userdel name

pwd

4.查看当前路径 pwd
Linux 路径分割符是 ’ \ ’
Windows 路径分隔符是 ’ / ’

ls

5.显示文件名 ls [ 选项 ]

选项功能
-a显示所有文件及目录 (包括以“.”开头的隐藏文件)
-l使用长格式列出文件及目录的详细信息
-r将文件以相反次序显示(默认依英文字母次序)
-t根据最后的修改时间排序
-n用数字的UID,GID代替名称(介绍UID,GID)
-d查看目录的信息,而不是里面子文件的信息
-i输出文件的inode节点信息
-m水平列出文件,以逗号间隔
-k以k字节形式表示文件大小 ls -alk [文件]
-A同 -a ,但不列出 “.” (当前目录) 及 “…” (父目录)
-S根据文件大小排序
-R递归列出所有子目录
-X按文件扩展名排序
–color输出信息中带有着色效果

在这里插入图片描述
8512 是文件大小
在这里插入图片描述
d 开头的文件类型是目录
- 开头的文件类型是普通目录
在这里插入图片描述

这里的 . 是当前路径 .. 是 上级路径

.开头文件是隐藏文件

touch

6.创建文件 touch [选项] [文件]
功能:创建文件,或者更改文档的日期时间,包括存储时间和更改时间

选项功能
-a/–time=atime改变档案的读取时间记录
-m/–time=mtime改变档案的修改时间记录
-r使用参考档的时间记录,与 --file 的效果一样
-c/–no-create不创建新文件
-d设定时间与日期,可以使用各种不同的格式
-t设定档案的时间记录,格式与 date 命令相同
-f此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题
–help显示帮助信息
–version列出版本讯息

nano

7.打开文件 nano [ 选项 ] [ 文件 ]

./

8.编译,产生可执行文件a.out gcc test.c

9.运行 ./a.out

cd

10.更改路径(change director) cd [ 选项 ]
cd .. 回退路径
cd ~ 工作路径

绝对路径
相对路径

alias

11.起别名 alias [ 名字 ] = '命令'

alias back = 'cd ..'
cd .. 改成 back

其实 ll 就是 alias ll = 'ls -l'
每次更改只在本次登录起作用


mkdir/rmdir

12.创建目录 mkdir [目录名](make director)
如果想创建一条路径,要带上-p选项
mkdir -p p1/p2/p3/p4

13.删除目录 rmdir [ 选项 ] [ 文件 ] (remove dirctor)
删除文件 rm [ 选项 ] [ 文件 ]
-r 递归删除
-f 不报警告,强制删除

man

14.查看相关信息 man [ 选项 ] [ 命令名字]
在这里插入图片描述
选择相应的位置的信息,就好像以下两个是不同的
man printf - Linux 的
在这里插入图片描述

man 3 printf - C 的
在这里插入图片描述

cp

15.拷贝目录或者文件 cp [ 选项 ] [ 文件 ]

选项功能
-f若目标文件已存在,则会直接覆盖原文件
-i若目标文件已存在,则会询问是否覆盖
-p保留源文件或目录的所有属性
-r递归复制文件和目录
-d当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录
-l对源文件建立硬连接,而非复制文件
-s对源文件建立符号连接,而非复制文件
-b覆盖已存在的文件目标前将目标文件备份
-v详细显示cp命令执行的操作过程
-a等价于“pdr”选项

cp -rf [文件] 和上面的一样强制并且递归,用于拷贝目录

mv

16.剪切(移动) 文件 mv [选项] [源文件] [目标文件]
可以移动文件 mv ks.cfg /etc
把文件移到/etc目录下

还可以重命名文件
mv [文件名1] [文件名2]
文件名1改成文件名2


count=0; while[$count -le 1000]; do echo "hello ${count}"; let count++; done > file.txt

cat/tac

17.查看文件内容 cat [ 选项 ] [ 文件 ]
-n带上行号

18.反向显示文件内容 tac [ 选项 ] [ 文件 ]

more/less

moreless 可以去用来查看别人写的代码,或者是日志。
19.more [ 选项 ] [ 文件 ] 类似cat (不推荐)
20.less[ 选项 ] [ 文件 ] 类似cat
less命令的功能是用于分页显示文件内容。分页显示的功能与more命令很相像,但more命令只能从前向后浏览文件内容,而less命令则不仅能从前向后还可以从后向前浏览文件内容,更加灵活。

选项功能
-b设置缓冲区的大小
-e当文件显示结束后自动退出
-f强制打开文件
-g只标志最后搜索的关键词
-i忽略搜索时的大小写
-m显示阅读进度百分比
-N显示每行的行号
-o将输出的内容在指定文件中保存起来
-Q不使用警告音
-s显示连续空行为一行
-S在单行显示较长的内容,而不换行显示
-x将TAB字符显示为指定个数的空格字符

head/tail

21.查看文件前十行 head [ 选项 ] [ 文件 ]
head -3 xx 查看前三行

22.查看文件后十行 tail [ 选项 ] [ 文件 ]
tail -3 xx 查看后三行

echo

23.将内容显示到标准输出 echo [ 内容 ]

想要中间的N行怎么办?

head -120 file.txt | tail -20

先拿120行出来,然后再取后20行

date/cal

24.显示时间 date[ 选项 ] …[+格式]
在这里插入图片描述

时间戳: date +%s

date date +%Y-%m-%d_%H:%M:%S -d @时间戳
把时间戳转化为时间

25.显示阳历(公历) cal [参数] [月份] [年份] (Calendar)

选项功能
-3显示最近三个月的日历
-j显示在当年中的第几天(按天算从,1月1日开始)
-y显示当年的日历

find

26.用于在文件树下查找文件,并作出相应处理 find [路径] [选项]

grep

27.在文件里搜索字符串,将找到的打印出来 grep [选项] [字符串] [文件]

选项功能
-i忽略大小写
-n列出所有的匹配行,显示行号
-v显示不包含匹配文本的所有行
-c只输出匹配行的数量

在文本中找到只含99的
在这里插入图片描述
在这里插入图片描述

zip/unzip/tar

28.压缩,解压缩 zip/unzip [选项] [文件]
默认zip是不会解压文件并且把内容都解压的,需要-r

29.打包,解包,不打开直接看内容 tar [参数] [文件]

选项功能
-c建立一个压缩文件的参数指令
-x解开一个参数文件的参数指令
-t查看tarfail里面的文件
-z是否同时具有gzip的属性,或者是否需要gzip压缩
-j是否同时具有bzip属性,或者是否需要bzip压缩
-v压缩时显示文件,常用,但是不建议用在背景执行过程
-f使用档名,f之后要立即接档名,不要再加参数
-C解压到指定目录

bc

30.计算器 bc

示例
在这里插入图片描述
在这里插入图片描述

history

31.显示历史命令 history

32.改变文件或目录权限 chmod [选项] [文件]

chmod

这里就需要先了解粘滞位

选项功能
-c若该文件权限确实已经更改,才显示其更改动作
-f若该文件权限无法被更改也不显示错误讯息
-v显示权限变更的详细资料
-R对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)

将文件test.txt权限改为775

chmod 775 test.txt

加上粘滞位

chmod +t /home/

当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由

  • 超级管理员删除
  • 目录所有者删除
  • 文件所有者删除

gcc

gcc [参数] 源文件

gcc命令来自于英文词组“GNU Compiler
Collection
”的缩写,其功能是用于C/C++语言编译器。gcc是开源领域使用最广泛的编译工具,具有功能强大、兼容性强,效率高等特点。
预编译(Preprocessing)、编译(Compilation)、汇编 (Assembly)、连接(Linking)。

选项功能
-o指定生成的输出文件
-E仅执行编译预处理
-S将C代码转换为汇编代码
-wall显示警告信息
-c仅执行编译操作,不进行连接操作
-g生成debug程序。向程序中添加调试符号信息

符号

count=0; while[$count -le 1000]; do echo "hello ${count}"; let count++; done > file.txt

> 输出重定向

输出重定向,本来要输出到显示上,但是被重定向到了文件里

echo "hello world!" > test.txt
cat test.txt

>>追加重定向

如果想加内容,可以用 >>

echo "hello world!" >> test.txt
cat test.txt

< 输入重定向

从键盘上读取内容

cat < test.txt

| 管道

把一个命令执行完的结果传递给另一条命令
其实这里有隐式重定向

head -120 file.txt | tail -20

先拿120行出来,然后再取后20行。

按键

命令模式

hjkl 控制上下左右
其中 h 表示左 ,l 表示右 ,k 表示上 ,j表示下
shift + 6跳到行首
shift + 4跳到行末
gg起始行
shift + g末尾行
n + shift + g跳转到指定行
b / w按照单词为单位移动光标

文本操作

yy 复制当前行
nyy 复制当前行及其之后的n行
p 粘贴
np 一次粘贴n行
u 撤销
dd删除 支持ndd
dd->p 剪切
shift + ~ 大小写转换
x 删除光标后内容 支持nx
shift + x 删除光标前内容 支持nx
r 替换一个字符,支持nr
shift + r 替换模式

底行模式

set nu 调出行号
set nonu 取消行号
!man [文件名]可以在vim的同时查看手册
!make 可以直接编译
!./[文件名] 可以直接运行

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

eptcup_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值