linux命令学习笔记

简介: linux命令学习笔记 前言 之前租用了腾讯云的服务器,用来学习web安全,因为要搭建的是lamp环境 所以linux的基本操作必须要会,今天趁着在linux中搭建网站,学了一些基本操作,不写下来,总觉得不熟悉。

linux命令学习笔记

前言
之前租用了腾讯云的服务器,用来学习web安全,因为要搭建的是lamp环境 所以linux的基本操作必须要会,今天趁着在linux中搭建网站,学了一些基本操作,不写下来,总觉得不熟悉。

正文
1.cp命令
Linux cp命令主要用于复制文件或目录。

语法:cp [options] source dest
参数说明:

-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
实例

使用指令"cp"将当前目录"test/"下的所有文件复制到新目录"newtest"下,输入如下命令:

$ cp –r test/ newtest          
更详细的cp命令请查看:https://www.cnblogs.com/gongxq/p/5802718.html

2.mv命令
Linux mv命令用来为文件或目录改名、或将文件或目录移入其它位置。

语法:mv [options] source dest

参数说明:

-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f: 在mv操作要覆盖某已有的目标文件时不给任何指示;
mv参数设置与运行结果:

命令格式 运行结果
mv 文件名 文件名 将源文件名改为目标文件名
mv 文件名 目录名 将文件移动到目标目录
mv 目录名 目录名 目标目录已存在,将源目录
移动到目标目录;目标
目录不存在则改名
mv 目录名 文件名 出错
查看更详细的mv操作请访问:https://www.cnblogs.com/piaozhe116/p/6084214.html

3.Linux命令行下如何终止当前程序
快捷键:

Ctrl+c

在命令行下起着终止当前执行程序的作用,

Ctrl+d

相当于exit命令,退出当前shell

Ctrl+s

挂起当前shell(保护作用很明显哦)

4.

Ctrl+q

解冻挂起的shell再不行就重新连接打开一个终端,reboot linux 或 kill 相关进程。

5.mkdir命令
1.mkdir命令使用权限

所有用户都可以在终端使用mkdir命令在拥有权限的文件夹创建目录

2.mkdir命令使用格式

mkdir [选项] DirName

3.mkdir命令功能

通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的目录。要创建目录的用户必须对所创建目录的父目录具有写权限(了解Linux文件-文件夹权 限请点击这里)。并且,所创建的文件夹(目录)不能与其父目录(即父文件夹)中的文件名重名,即同一个目录下不能有同名的(区分大小写)。

4.mkdir命令选项说明

    命令中的[选项]一般有以下两种:

    -m    用于对新建目录设置存取权限,也可以用 chmod 命令进行设置。

    -p     需要时创建上层文件夹(或目录),如果文件夹(或目录)已经存在,则不视为错误。

    5.mkdir命令使用举例

    例一:在桌面下面创建以“demo”命名的文件夹。

    使用以下命令即可。

    mkdir 桌面/demo

  例二:在桌面下面创建以“demo”命名的文件夹,并且给文件夹赋权限,权限为123。

    mkdir  123  桌面/demo

6.rm命令
    一、rm命令使用权限

    所有用户都可以在终端使用 rm命令删除目录。

    二、rm命令使用格式

    格式:rm [选项] DirName

    三、rm命令功能

    删除档案及目录。

    四、rm命令选项说明

    命令中的[选项]一般有以下几种:

    -i 删除前逐一询问确认。

  -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

  -r 将目录及以下之档案亦逐一删除,递归所有的子目录,逐一询问。

    五、rm命令使用举例

    例一:删除所有C语言程序文档;删除前逐一询问确认。

    rm -i *.c

  例二:将 Finished 子目录及子目录中所有档案删除。

    rm -r Finished

rm -f abc.txt的意思是说强制删除文件。如果文件不存在,也不要提示。这是因为如果直接使用rm abc.txt那么如果文件不存在,rm 会提示你。这在某些情况下,比如我们写一些小脚本,可能不需要他这样做。 rm -r abc 的意思是说递归所有的子目录。其中要求abc是一个目录名。这条rm运行后,abc目录下的所有子目录里的东西也会一同被删除。通常我们在删除一个目录时会使用rm -rf abc这样的形式,这就是说明删除目录abc,同时要求命令不要产生任何提示。

注:在linux没有回收站,在试用rm命令的时候,一定要小心些,删除之后就无法再恢复了。

源自此博客:https://blog.csdn.net/linjpg/article/details/77854671

7.vi命令
创建文件【vi】

  一、进入vi的命令

     vi filename :打开或新建文件,并将光标置于第一行首

     vi +n filename :打开文件,并将光标置于第n行首

    vi + filename :打开文件,并将光标置于最后一行首

    vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

    vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

    vi filename....filename :打开多个文件,依次进行编辑

二、移动光标类命令

  h :光标左移一个字符

  l :光标右移一个字符

  space:光标右移一个字符

  Backspace:光标左移一个字符

  k或Ctrl+p:光标上移一行

  j或Ctrl+n :光标下移一行

  Enter :光标下移一行

  w或W :光标右移一个字至字首

  b或B :光标左移一个字至字首

  e或E :光标右移一个字至字尾

  ) :光标移至句尾

  ( :光标移至句首

  }:光标移至段落开头

  {:光标移至段落结尾

  nG:光标移至第n行首

  n+:光标下移n行

  n-:光标上移n行

  n$:光标移至第n行尾

  H :光标移至屏幕顶行

  M :光标移至屏幕中间行

  L :光标移至屏幕最后行

  0:(注意是数字零)光标移至当前行首

  $:光标移至当前行尾

 三、屏幕翻滚类命令

  Ctrl+u:向文件首翻半屏

  Ctrl+d:向文件尾翻半屏

  Ctrl+f:向文件尾翻一屏

  Ctrl+b;向文件首翻一屏

  nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

 四、插入文本类命令

  i :在光标前

  I :在当前行首

  a:光标后

  A:在当前行尾

  o:在当前行之下新开一行

  O:在当前行之上新开一行

  r:替换当前字符

  R:替换当前字符及其后的字符,直至按ESC键

  s:从当前光标位置处开始,以输入的文本替代指定数目的字符

  S:删除指定数目的行,并以所输入文本代替之

  ncw或nCW:修改指定数目的字

  nCC:修改指定数目的行

 五、删除命令

  ndw或ndW:删除光标处开始及其后的n-1个字

  do:删至行首

  d$:删至行尾

  ndd:删除当前行及其后n-1行

  x或X:删除一个字符,x删除光标后的,而X删除光标前的

  Ctrl+u:删除输入方式下所输入的文本

 六、搜索及替换命令

  /pattern:从光标开始处向文件尾搜索pattern

  ?pattern:从光标开始处向文件首搜索pattern

  n:在同一方向重复上一次搜索命令

  N:在反方向上重复上一次搜索命令

  :s/p1/p2/g:将当前行中所有p1均用p2替代

  :n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代

  :g/p1/s//p2/g:将文件中所有p1均用p2替换

 七、vi命令使用举例

  例一:创建文件a.txt。

  vi a.txt

  Hello everyone!

  :wq //在退出时,直接输入:wq会发现退不出去,退出方法是:编辑完成后按ESC,然后输入:q就是退出;还有:wq是保存后退出,加感叹号是表示强制

8.vim 的使用
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。 这三种模式的作用分别是:

命令模式:

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

i 切换到输入模式,以输入字符。
x 删除当前光标所在处的字符。
: 切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

输入模式

在命令模式下按下i就进入了输入模式。

在输入模式中,可以使用以下按键:

字符按键以及Shift组合,输入字符
ENTER,回车键,换行
BACK SPACE,退格键,删除光标前一个字符
DEL,删除键,删除光标后一个字符
方向键,在文本中移动光标
HOME/END,移动光标到行首/行尾
Page Up/Page Down,上/下翻页
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
ESC,退出输入模式,切换到命令模式
底线命令模式:

在命令模式下按下:(英文冒号)就进入了底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号)

vim编辑器几种退出的形式
点击Esc键退出编辑模式,进入命令模式,and than

    :q —–) 退出 eq quit (正常退出,在没有编辑的情况下)
    :q! —-)不保存退出 eq quit!(在编辑出现错误的情况下)
    :wq —–)写入文件并退出 eq writequit
    *:wq! —退出时写入与否取决于文件的权限,有写权限写入并退出,没有写权限就强制退出
    :x —-)等同于:wq,写入与否取决于文件是否变动
    :qa —-)退出全部 eq quitall

按ESC键可随时退出底线命令模式。

9.source命令
Linux Source命令及脚本的执行方式解析
当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录;这时就想到用source命令,如:source /etc/profile
对source进行了学习
source命令:
source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。
功能:使Shell读入指定的Shell程序文件并依次执行文件中的所有语句
source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
用法:
source filename 或 . filename
source命令(从 C Shell 而来)是bash shell的内置命令;点命令(.),就是个点符号(从Bourne Shell而来)是source的另一名称。

10.tail命令
inux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容。

一、tail命令语法

tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
参数解释:
-f 该参数用于监视File文件增长。
-c Number 从 Number 字节位置读取指定文件
-n Number 从 Number 行位置读取指定文件。
-m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。
-b Number 从 Number 表示的512字节块位置读取指定文件。
-k Number 从 Number 表示的1KB块位置读取指定文件。
File 指定操作的目标文件名称
上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部開始计算。
tail可运行文件一般在/usr/bin/以下。

二、tail命令使用方法演示例子

1、tail -f filename
说明:监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。退出,按下CTRL+C。

2、tail -n 20 filename
说明:显示filename最后20行。

3、tail -r -n 10 filename
说明:逆序显示filename最后10行。

11. curl 命令
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。

curl -V(大写)查看curl的版本和该版本支持的协议,如下图



curl的常见用法请查阅此博客:https://www.jb51.net/article/118402.htm

或者查看百度 https://baike.baidu.com/item/curl/10098606?fr=aladdin

12.pwd命令
pwd是Print Working Directory的缩写,其功能是显示当前所在工作目录的全路径。主要用在当不确定当前所在位置时,通过pwd来查看当前目录的绝对路径。
pwd命令语法

pwd [选项]
参数:
-L:--logical,显示当前的路径,有连接文件时,直接显示连接文件的路径,(不加参数时默认此方式),参考示例1。
-p:--physical,显示当前的路径,有连接文件时,不使用连接路径,直接显示连接文件所指向的文件,参考示例2。 当包含多层连接文件时,显示连接文件最终指向的文件,参考示例3。
--help:显示帮助信息。

13.touch命令
touch命令:

作用:创建空文件,或者改变文件的时间戳属性

格式: touch [option] [file]

可以同时创建一个或者多个空文件

ghostwu@dev:~/linux/mkdir$ ls 
ghostwu@dev:~/linux/mkdir$ touch a.txt 
ghostwu@dev:~/linux/mkdir$ ls 
a.txt 
ghostwu@dev:~/linux/mkdir$ touch b.txt c.txt 
ghostwu@dev:~/linux/mkdir$ ls 
a.txt b.txt c.txt 
ghostwu@dev:~/linux/mkdir$ touch {1..5}.txt 
ghostwu@dev:~/linux/mkdir$ ls 
1.txt 2.txt 3.txt 4.txt 5.txt a.txt b.txt c.txt
参考链接 https://blog.csdn.net/u012294618/article/details/72616293    https://www.cnblogs.com/ghostwu/p/8976883.html

14.cat命令
cat命令主要用来查看文件内容,文件合并,追加文件内容等功能。

 

A:查看文件内容主要用法:

1、cat f1.txt,查看f1.txt文件的内容。

2、cat -n f1.txt,查看f1.txt文件的内容,并且由1开始对所有输出行进行编号。

3、cat -b f1.txt,查看f1.txt文件的内容,用法与-n相似,只不过对于空白行不编号。

4、cat -s f1.txt,当遇到有连续两行或两行以上的空白行,就代换为一行的空白行。

5、cat -e f1.txt,在输出内容的每一行后面加一个$符号。

6、cat f1.txt f2.txt,同时显示f1.txt和f2.txt文件内容,注意文件名之间以空格分隔,而不是逗号。

7、cat -n f1.txt>f2.txt,对f1.txt文件中每一行加上行号后然后写入到f2.txt中,会覆盖原来的内容,文件不存在则创建它。

8、cat -n f1.txt>>f2.txt,对f1.txt文件中每一行加上行号后然后追加到f2.txt中去,不会覆盖原来的内容,文件不存在则创建它。

B:创建文件以及写入文件内容的用法:

注意:创建文件的时候要设置文件结束标志,也就是<<EOF,可以把EOF换成别的字符,注意是大小写敏感的,当文件内容写完之后要输入结束标志EOF,这时命令会正确结束,表示成功创建文件并且写进内容。



 C:追加文件内容的用法:

注意:与创建文件内容不同的是符号单边号>变成了双边号>>

更多参考链接: https://www.cnblogs.com/fabulousyoung/p/4079759.html   http://www.runoob.com/linux/linux-comm-cat.html
--------------------- 
作者:white_HATmagic 
来源:CSDN 
原文:https://blog.csdn.net/qq_40491569/article/details/83039944 
版权声明:本文为博主原创文章,转载请附上博文链接!
相关文章
|
10天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
10天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
17天前
|
Ubuntu 架构师 Java
Linux系统常用命令非常详细建议收藏
Linux系统常用命令非常详细建议收藏
48 0
|
7天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
28 9
|
1天前
|
域名解析 网络协议 Linux
Linux 中的 Nslookup 命令怎么使用?
【4月更文挑战第12天】
17 6
Linux 中的 Nslookup 命令怎么使用?
|
2天前
|
运维 网络协议 Unix
18.系统知识-Linux常用命令
18.系统知识-Linux常用命令
|
3天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
3天前
|
Linux Go
Linux命令Top 100驱动人生! 面试必备
探索Linux命令不再迷茫!本文分10部分详解20个基础命令,带你由浅入深掌握文件、目录管理和文本处理。 [1]: <https://cloud.tencent.com/developer/article/2396114> [2]: <https://pan.quark.cn/s/865a0bbd5720> [3]: <https://yv4kfv1n3j.feishu.cn/docx/MRyxdaqz8ow5RjxyL1ucrvOYnnH>
46 0
|
6天前
|
缓存 运维 监控
Linux系统监控利器:探索常用命令及数据保存技巧
Linux系统监控利器:探索常用命令及数据保存技巧
23 4
Linux系统监控利器:探索常用命令及数据保存技巧
|
9天前
|
Linux 索引
linux 文件查找 和文件管理常用命令
linux 文件查找 和文件管理常用命令
19 0