Linux 基本命令

Posted 步履阑珊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 基本命令相关的知识,希望对你有一定的参考价值。

查看命令

ls    查看目录文件

ls  -la  查看所有目录(包括隐藏文件)

stat  文件(目录)  查看文件(目录)的详细信息

lsattr  文件    查看文件的隐藏属性

. 当前目录

.. 上一层目录

- 前一个工作目录

~ 当前【用户】所在的家目录

文件夹操作

  增

mkdir  文件夹名称  创建文件夹

touch   .py文件   创建一个文件

  可以使用递归来生成文件夹结构

    全是文件夹的       mkdir   -p(参数)  文件夹1/文件夹2/文件夹3

    文件夹下的文件    mkdir  -p(参数)   文件夹4/{文件夹5,文件6,文件7} (文件夹5、6、7并列)

  删

rmdir  文件夹名称(空的)

  想要删除非空的文件夹   rm -rf  ./*    

  改

mv  原文件名  新文件名(也有可能是移动)

执行第一个python命令

touch .py文件    创建一个py文件

vi  py文件      进入文件中

  按下键  i  进入编辑模式

  按下键o (在光标所在的下一行进入编辑模式

  按下键  Esc  进入命令模式

    输入命令  :wq!   保存退出

    输入命令  :q!   退出,不保存

 

vi  或  vim

  所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。

  但是目前我们使用比较多的是 vim 编辑器。

  vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

vi/vim 的使用

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)

命令模式

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

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

 

移动光标

复制代码
w(e)  移动光标到下一个单词
b    移动到光标上一个单词

数字0  移动到本行开头
$    移动光标到本行结尾

H    移动光标到屏幕首行
M    移动到光标到屏幕的中间一行
L    移动光标到屏幕的尾行
gg    移动光标到文档的首行
G    移动光标到文档尾行

ctrl + f  下一页
ctrl + b  上一页

`.  移动光标到上一次的修改行
复制代码

查找

复制代码
/chaoge     在整篇文档中搜索chaoge字符串,向下查找
?chaoge     在整篇文档中搜索chaoge字符串,向上查找

*        查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
#        查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处

gd        找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上

%    找到括号的另一半!!
复制代码

复制,删除,粘贴

复制代码
yy    拷贝光标所在行
dd    删除光标所在行
D     删除当前光标到行尾的内容
dG    删除当前行到文档尾部的内容
p     粘贴yy所复制的内容
x   删除光标所在的字符
u 撤销上一步的操作
复制代码

数字与命令

3yy    拷贝光标所在的3行
5dd    删除光标所在5行

 输入模式

在命令模式下按下字母i  可以进入输入模式

在输入模式下按下键Esc 可以退出输入模式

底线命令模式

在命令模式下输入冒号(英文的:),就进入了底线命令模式,在底线命令模式下可以输入单个或多个字符的命令,常用命令有:

:q!     强制退出
:wq!    强制写入退出
:set nu 显示行号
:数字  调到数字那行

随时按下esc可以退出底线命令模式

vim按键

移动光标

复制代码
移动光标的方法
h 或 向左箭头键(←)    光标向左移动一个字符
j 或 向下箭头键(↓)    光标向下移动一个字符
k 或 向上箭头键(↑)    光标向上移动一个字符
l 或 向右箭头键(→)    光标向右移动一个字符

向下移动5行      5j
向右移动10字符    10l

n(space)    按下数字n,例如10,然后按下空格,光标会向右移动10个字符
复制代码

底线命令

:! command    暂时离开vim指令模式,执行command的结果
例如  :!ip a    临时看一下ip信息,然后可以回到vim

:set nu    显示vim行号
:set nonu    取消行号

更多vim用法请看菜鸟教程:http://www.runoob.com/linux/linux-vim.html

vi 文件(vim 文件)  进入文件

  默认是命令模式,需要输入a/i进入编辑模式,然后输入文本"Life is short,i use python"

  按下esc键,回到命令模式 输入 :wq! 强制保存退出
w write 写入
q quit 退出
! 强制 或者

:x 保存退出
:q 不保存退出
:q! 不保存强制退出

链接:vim与程序员

cat

  cat命令用于查看纯文本文件(常用于内容较少的)

cat  w文件               查看w文件

cat  -n  w文件  或  cat  w文件  -n    查看文件并打印行号

cat 追加文字到文件

mory

  用于查看内容多的文本

例如要看一个很长的配置文件,cat查看内容屏幕会快速翻滚到结尾。

more命令查看文本会以百分比形式告知已经看到了多少使用回车键向下读取内容

mory  路径/文本

echo

  echo命令用于在终端输出字符串或变量提取后的值,格式是“echo 【字符串|$变量】”

  覆盖写入 和 追加写入(echo有打印的意思,只是将打印的内容没有打印在终端而是打印在文件中

特殊符号

重定向符号
1.>>    追加重定向,把文字追加到文件的结尾
2.>     重定向符号,清空原文件所有内容,然后把文字覆盖到文件末尾
echo "oldboy-python666" > /tmp/oldboy.txt
echo "chaoge666" >> /tmp/oldboy.txt
------------------------------------
我想把命令执行的结果信息,写入到文件中
ip addr > /tmp/network.txt   #标准输出重定向 把命令执行结果信息,放入到文件中
3.通配符  *
ls -l /etc/us*  查看etc文件夹下以us开头的详细信息

 

复制

  copy 简写  cp 

    在操作文件前,请先做好备份

    cp 新建文件 新建文件备份

  cp  参数  目标文件   重命名,复制后的文件

  参数:

    cp -r 递归,复制目录以及目录的子孙后代(相当于新建了一个目录只是这个目录的结构)

    cp -p 复制文件,同时保持文件属性不变

    cp -a 相当于 -pdr  (完全复制)

复制XXX.py 到 tmp 目录下

  cp XXX.py tmp

复制XXX.py 到 tmp 目录下顺便改名为chaoge.py

   cp XXX.py tmp/chaoge.py

移动命令(改名)

move 简写 mv

mv  旧目录  新目录      改名:将旧目录改名为新目录

mv  移动目录   目录     移动:将移动目录移动到目录中

mv  移动文件  目录      移动:将移动文件移动到目录中

  移动和改名的区别在于:要移动(改名)的对象是否存在,若存在为移动,不存在是改名

删除命令

remove  简写 rm

rm XXX.py  只适用于空的文件,无法删除目录

  在删除的时候,会有提示:是否确认删除,你需要按 y 确认

参数

  -f  取消提示,强制删除

  -r 可以删除目录

rm -rf tmp  删除目录tmp,取消提示

新手注意:

  rm -rf  ./*    这句话的意思是  删除(rm)当前(.)目录(-r)下的所有内容(*) 且没有提示(-f)

------------------

基于以上友情提示:初学者使用rm命令,要随时快照虚拟机(备份存档)

在虚拟机上(不是Xshell等远程连接的对象)

xargs命令

 

 

 

find查找

Linux里如何找到需要的文件 例如 oldboy.py

  find 在哪里(目录)  什么类型(文件类型) 叫什么名字(文件名)

  find /tmp/       -type f       -name "oldboy.py"

#找出/tmp所有以 .txt 结尾的文件
find /tmp/ -type f -name "*.txt"

#找到/etc下所有名字以host开头的文件
find /etc -name \'host*\'

#找到/opt上一个名为settings.py
find /opt -name \'settings.py\'

grep

(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本并把匹配的行打印出来常用于配置文件的编辑

语法:grep 参数  [--color=auto]  [字符串]  filename(文件名)

  参数:

    -i  : 忽略大小写

    -n :    输出行号

    -v : 反向选择

  --color=auto  给关键词部分添加颜色(默认存在)

  字符串:要查找的内容

示例:

  grep  ‘HOST’  settings.py  在settings.py文件中查找 ‘HOST’的关键词

常用于查看进程  ps -ef

查看有哪些端口存活  netstat -tunlp

head命令

head显示文件的前几行,默认是前十行

查看前两行

  head -2 新建文件.txt

tail命令

tail 显示文件后几行,默认是后十行

查看后两行

  tail -2 新建文件.txt

实时刷新显示

  tail -f  日志文件.log

 

显示文件的10-30行

  head -30 文件.txt | tail  -21  (从iii.txt文件中的前三十行中挑出21行(从第10到30行算上第10行共有21条)

管道命令

命令格式:命令A  |  命令B

Linux提供的管道符“|”讲两条命令隔开,管道符左边命令的输出作为管道符右边命令的输入

常常和 grep。。 搭配在一起

sed??????????

  sed是一种流编辑器,它是文本处理中非常重要的工具,能够完美的配合正则表达式使用,功能不同凡响。

    处理时当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),

    接着用sed命令处理缓冲区中的内容

    处理完成后,把缓冲区的内容送往屏幕接着处理下一行,这样不断重复,直到文件末尾文件内容并没有 改变,除非你使用重定向存储输出

  Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

 

 

 

akw

 

which命令

  which命令用于查找文件。准确的说是查找并显示给定命令的绝对路径

    环境变量PATH中保存了查找命令时需要遍历的目录。所以

    which指令会在环境变量$PATH设置的目录里查找符合条件的文件。查看环境变量 echo $

    也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

  语法 which 【参数】【文件】

    参数:

      -n<文件名长度>  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。 

      -p<文件名长度>  与-n参数相同,但此处的<文件名长度>包括了文件的路径。

      -w  指定输出时栏位的宽度。

      -V  显示版本信息。

示例:

which pwd
which python

 

 

 

 

alias 起别名

seq

 

scp命令

du命令

  用于显示目录或文件的大小,du会显示指定的目录或文件所占用的磁盘空间。

du 参数  文件(目录)

  参数:

    -s   显示总数

    -h  以K、M、G为单位,可读性强

示例:

  du  -sh  /tmp/

df命令

df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

 

复制代码
语法
df(选项)(参数)
-h或--human-readable:以可读性较高的方式来显示信息;
-k或--kilobytes:指定区块大小为1024字节;
-T或--print-type:显示文件系统的类型;
--help:显示帮助;
--version:显示版本信息。
复制代码

示例

查看系统磁盘设备,默认是KB为单位:
df
使用-h选项以KB以上的单位来显示,可读性高:
df -h

top命令

chattr命令(加锁、解锁)

chattr +a 文件       给文件上锁,只能添加数据,无法删除文件

chattr -a  上锁的文件    给上锁的文件解锁,可以删除文件

Linux时间同步

Ntp时间服务器????????

由于我们只需要用作客户端更新时间

ntpdate -u ntp.aliyun.com

wget命令(在中断下载网络文件)

wget 参数 下载地址

wget -r -p http://pythonav.cn/xiaobo.jpg(美女图片)

开关机命令

reboot     重启

poweroff  关机

 

 

 

关于Linux xshe11常用的快捷键

 

链接Linux基本命令

 

以上是关于Linux 基本命令的主要内容,如果未能解决你的问题,请参考以下文章

markdown [Docker] Docker片段列表和命令#linux #docker #snippets

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

VSCode自定义代码片段——git命令操作一个完整流程

VSCode自定义代码片段——cli的终端命令大全

VSCode自定义代码片段4——cli的终端命令大全

VSCode自定义代码片段15——git命令操作一个完整流程