自用Linux基础命令

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

文章目录

  • 命令
    • 修改账户
    • pwd
    • ls
    • touch
    • nano
    • ./
    • cd
    • alias
    • mkdir/rmdir
    • man
    • cp
    • mv
    • cat/tac
    • more/less
    • head/tail
    • echo
    • date/cal
    • find
    • grep
    • zip/unzip/tar
    • bc
    • history
    • chmod
    • gcc
  • 符号
    • `>` 输出重定向
    • `>>`追加重定向
    • `<` 输入重定向
    • `|` 管道
  • 按键
    • 命令模式
    • 文本操作
    • 底行模式

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

命令

修改账户

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 是文件大小
自用Linux基础命令_第1张图片
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 [ 选项 ] [ 命令名字]
自用Linux基础命令_第2张图片
选择相应的位置的信息,就好像以下两个是不同的
man printf - Linux 的
自用Linux基础命令_第3张图片

man 3 printf - C 的
自用Linux基础命令_第4张图片

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的
在这里插入图片描述
自用Linux基础命令_第5张图片

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

示例
自用Linux基础命令_第6张图片
在这里插入图片描述

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 可以直接编译
!./[文件名] 可以直接运行

你可能感兴趣的:(学习总结,Linux,linux)