du查看某个文件或目录占用磁盘空间的大小

du -sh : 查看当前目录总共占的容量。而不单独列出各子项占用的容量

du --max-depth=1 -h:查看当前文件夹下磁盘的使用状况

特殊字符:

.:表示任意一个字符,一定是【一个】任意字符

:表示匹配任意字符零次或多次

例如:.a.
:意为任意字符后跟字符a,再跟任意字符0次或任意多次

.*:表示零个或多个任意字符

[]:如果^在中括号内则表示反向选择

1:cat 文件名称:显示文件的内容(从第一行显示到最后一行)

2:tac 文件名称:显示文件的内容(从最后一行显示到第一行)

3:seq seq用于产生从某个数到另外一个数之间的所有整数

例如:seq 1 5 >>>输出1,2,3,4,5

4:rev 文件名称:倒叙输出

例如:文件a,内容如下:hello world

执行rev a后将输出:dlrow olleh;

5:sleep :睡眠

sleep 1 睡眠1秒

sleep 1s 睡眠1秒

sleep 1m 睡眠1分

sleep 1h 睡眠1小时

sleep 1d 睡眠1天

6:unset 删除变量的赋值

7:-eq:相等

-ne:不相等

-gt:大于

-ge:大于/等于

-lt:小于

-le:小于/等于(当返回的是0代表为true,返回代表false)

8:tar打包:

(1):打包成.tar.gz结尾的文件:

(2):解压.tar.gz打包的文件:

(3):打包成.tar.bz2结尾的文件:

(4):解压.tar.bz2文件:

(5):zip压缩:zip a.zip a:此命令用于把a文件压缩成a.zip文件

解压.zip格式的文件:unzip a.zip

(6):tar -tzf oracle.tar.gz:此命令列出归档文件oracle.tar.gz中的所有文件列表

(7):tar -xzvf oracle.tar.gz:该命令将归档文件分解并解压缩到原有文件的路径中。

9:cp -r 源文件 目标文件:考贝

例如:cp -r a.txt work/(此命令的含义是:把a.txt文件考贝到work文件下)

10:"删除命令:rm

rm -i 文件名称:删除文件之前询问

rm -r 文件名称:删除文件及文件下的目录

rm -f 文件名称:不经确认删除(直接删除)

11:移动目录或文件:mv

mv /tmp/xxx.tar /root:此命令用于将/tmp/xxx.tar文件移动到/root下

mv aaa.tar bbb.tar:此命令是将文件aaa.tar更名为bbb.tar

12:cat 文件名称:查看文件内容(如果要同时查看多个文件内容,文件名称之间用空格隔开)

13:su 用户名:它可以让一个普通用户拥有超级用户的权限

14:chmod:用于改变文件或目录的访问权限

语法格式:chmod [who] [+|-|=] 文件名

15:chown:用于更改某个文件或目录的属主和属组

语法格式:chown [用户:组] 文件

16:kill [-s 信号] 进程号:kill命令可以用于终止后台进程

17:git log -n --pretty=oneline:显示最近的n条分区

18:git log -p -1:显示日志的时候同时显示改动

19: date:显示当前时间

21:sed命令的使用方法:

案例一:

sed -n '3p' aaa:表示打印aaa这个文件中的第3行的内容

显示指定范围内的内容:

sed -n 'num1,num2p' 文件名称(num1表示开始位置,num2表示结束位置)

例如:

sed -n '1,3p' aaa:表示只查看aaa这个文件的第1行到第3行的内容

sed '1,3d' filename:删除1到3行的内容

sed '/My/,/You/d' filename:删除包含“My”的行到包含"You"的行之间的行

sed

‘/My/,10d' filename:删除从'My'开始到第10行的内容

删除行的操作:使用d

sed '1d' filename:删除第一行

sed '$d' filename:删除最后一行($在此表示最后一行的意思)

sed '1,2d' filename:删除第一行到第二行(此处的逗号表示从什么到什么的意思)

sed '2,$d' filename:删除第2行到最后一行的内容

显示某行:使用p

sed -n '1p' aaa:显示aaa文件的第一行

sed -n '$p' aaa:显示aaa文件的最后一行

sed -n '1,2p' aaa:显示aaa文件的第一行到第二行

sed -n '2,$p' aaa:显示aaa文件的第二行到最后一行

使用模式查询:

sed -n '/a/p' aaa:在文件aaa中查询含有关键字a所在的行

sed -n '/$/p' aaa:在文件aaa中查询包括关键字$所在的所有行,使用反斜线\屏蔽特殊含义

增加一行或多行字符串:

sed '1a drink tea' aaa:在文件aaa的第一行中添加字符串"drink tea"

sed '1,3a drink tea' aaa:在文件aaa的第一行到第三行后增加字符串"drink tea"

sed '1a drink tea\n or office' aaa:在文件aaa中的第一行后增加office(第一行后增加多行使用换行符\n)

代替一行或多行:

sed '1c hi' aaa:将文件aaa的第一行代替为hi

sed '1,3c hi' aaa:把文件aaa的第一行到第3行代替为hi

替换:

sed 's/a/hello/g' aaa:把文件aaa中的a替换成hello

删除一个字符:

sed 's/a//' aaa:删除文件aaa中的字符a

sed 's/$//' aaa:删除文件aaa中的字符$($是特殊符号,要使用\屏蔽)

将替换结果写入一个文件中用w选项

sed 's/a/hell/w sed.out' aaa:将文件aaa中的a替换成hello并写入到sed.out文件中(此处需要把文件名写在单引号中)

当需要从第N行开始匹配,可以使用/Ng

例如:echo this thisthisthis | sed 's/this/THIS/3g'

删除空行:

Sed ‘s/^$/d’ file

此处的^$表是空行

22:特殊符号:

*:可以匹配文件名中的任何字符串

?:使用可以匹配文件名中的任何单个字符

[!0-9]*:表示0-9非数字的任意字符串

22:&&:命令1 && 命令2:表示如果命令1执行成功,命令2才会被执行

||:命令1 || 命令2:表示如果命令1示执行成功,那么就执行命令2

23:{}:匹配模式结果出现的次数

A{n}B:匹配模式出现n次

A{N,}B:匹配模式出现最少n次

A{n,m}B:匹配模式出现n到m次之间,n/m是0-255之间的任意整数

24:df:检查linux服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

25:head和tail命令:

head -20 filename:查阅文件前20行

tail -7 filename:查阅文件后7行

26:echo "hello world" | tar "[a-z]" "[A-Z]"表示将小写转换成大写最终输出:HELLO WORLD

echo "HELLO WORLD" | tr "[:upper:]" "[:lower:]"表示将小写转换成大写最后输出:hello world

将文件从小写转换为大写并将结果存入一个新文件

echo "hello world" | tr "[a-z]" "[A-Z]" > newfile.txt

27:shell变量

变量名称=变量值

案例如下:

x=100(定义一个变量x=100)

echo ${aa}(输出变量x)

结合变量值:

echo ${变量1}${变量2}

例如:

aa=100(定义变量aa)

bb=200(定义变量bb)

echo ${a}${b}(输出结果为100200)

查看所有只读变量:readonly

环境变量的定义语法格式:变量名=变量值;export 变量名

案例如下:

a=100;export a(定义一个a=100的环境变量)

env:查看所有环境变量

set:查看所有的变量

删除环境变量:unset 变量名称

案例如下:

unset a(删除a这个环境变量)

28:$?检查命令的执行结果,如果返回值为0则表示执行成功,返回值为1则表示执行失败

30:测试数值

-eq:相等(=)

-ne:不相等

-gt:第一个数大于第二个数

-lt:第一个数小于第二个数

-le:第一个数小于等于第二个数

-ge:第一个数大于等于第二个数

31:expr的基本语法:expr argument operator argumet

案例如下:

expr 10 + 10(计算两个数的和)

expr 30 / 3(求两个数相除后的结果)

expr 2 * 3(求两个数相乘的结果,注意当使用乘号时,前现要加上反斜杠\)

在上面的案例中注意符号两边要加上空格,不然会报错

32:if 条件

fi

或者使用

案例一:

1 #!/bin/bash

2

3 if [ "10" -lt "12" ](如果10小于12,此处的-lt代表小于号的意思)

4 then(那么)

5 echo "10小于12"(输出10小于12)

6 fi(结束语)

案例二:

1 #!/bin/bash

2

3 echo -n "Enter your name : "(请输入你的名字)

4 read NAME(读取用户输入的名字,read在此处读取从键盘的输入)

5 if [ "$NAME" = "" ];then(如果名字为空)

6 echo "You did not enter any information"(输出信息)

7 fi(结束语)

scp命令的使用方法:

scp就是secure copy,一个在linux下用来进行远程拷贝文件的命令。

一、将本机文件复制到远程服务器上

scp /home/administrator/news.txt root@192.168.6.129:/etc/squid

/home/administrator/ 本地文件的绝对路径

news.txt 要复制到服务器上的本地文件

root 通过root用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

192.168.6.129 远程服务器的ip地址(也可以使用域名或机器名)

/etc/squid 将本地文件复制到位于远程服务器上的路径

二、将远程服务器上的文件复制到本机

scp remote@www.abc.com:/usr/local/sin.sh /home/administrator

remote 通过remote用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

www.abc.com 远程服务器的域名(当然也可以使用该服务器ip地址)

/usr/local/sin.sh 欲复制到本机的位于远程服务器上的文件

/home/administrator 将远程文件复制到本地的绝对路径

注意两点:

1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:

scp -p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator

2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。

1#从远程服务器中下载数据文件到本地主机

如果你想从远程主机host1中的/tmp/目录下拷贝test1 文件到本地主机的/tmp目录,那么可以在本地主机的命令行下面

输入命令:

scp root@host1:/tmp/test1 /tmp

2 从远程服务器中拷贝目录文件到本地主机下面

当你从远程主机中拷贝一个目录的时候,你需要给scp命令传入一个“-r“ 选项,这样scp命令就会将远程主机下面的整个目录的文件都拷贝的本地主机下。

输入下面的命令:

scp -r root@hots1:/tmp�0�2 /tmp

这个命令就会把host1主机下的tmp目录拷贝到本地主机的/tmp目录下

3 将本地主机的文件拷贝到远程服务器上

如果要将本地主机的 /tmp目录下的test1文件拷贝到远程主机的/tmp目录下,可以在本地主机输入下面的命令:

scp /tmp/test1 root@host1:/tmp

这样test1文件就会被拷贝到远程服务器上了。

4将本地主机下的目录上传到远程服务器

这个和刚才第二步的命令类似,就是需要传”-r” 参数给linux scp 命令,输入下面的 scp 命令:

scp -r /tmp root@hots1:/tmp

上面的命令会把本地主机的/tmp目录上传到远程主机host1的/tmp目录下。

linux打包命令:

zip命令的使用:

压缩命令:

(-r:表示递归压缩子目录下所有文件)

zip -r xxx.zip ./*:表示压缩服务器上当前目录的内容为xxx.zip文件

zip all.zip *.jpg:将所有.jpg的文件压缩成一个zip包

解压缩命令:

unzip test.zip

将压缩文件test.zip在当前目录下解压缩

unzip -n text.zip -d /tmp

将text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件

unzip -v text.zip

查看压缩文件目录,但不解压

如何设置crontab的编辑为vim

export EDITOR=vim

或者:

export EDITOR=/usr/bin/vim.basic

chmod命令的使用方法:

chmod -R 644 /a/b/c:使用-R选项将目录下的所有文件连同各个子目录下的文件的权限全部设置为文件属主和同组用户可读和写

Find命令的使用:

按照时间查找文件:mtime

用-号来限定更改时间在距今n日以内的文件,用+号来限定更改时间在跟今n日以前的文件

例如:查找更改时间在3日以前的文件

Find /var/adm -mtime +3 -print

例如:查找更改时间在5日是以内的文件

Find / mtime -5 -print

Mount:在当前文件中查找,不进入其他文件系统

例如:在当前文件中查找以XC结尾的文件

Find . -name “*.XC” -mount -print

定时任务学习:crontab

0,30 18-23 * * * /apps/bin/dbcheck.sh

上面的例子表示:每天的18-23点,每隔30分钏执行/apps/bin/dbcheck.sh脚本文件

Echo命令的使用:

Echo -n :输出之后不进行换行

Echo -e :可以使转义字符生效

Grep命令的使用:

-v:显示不包含匹配文本的所有行

-n:显示匹配行及行号

-i:不区分大小写

精确匹配:在抽取字符后面加上>,例如:

Grep “48>” data.f(表示在data.f文件中查找只包含48的行,其中>用于精确匹配)

Grep使用正则表达式时,最好用单引号括起来

Shell中$与${}的区别:

去掉左边(键盘上#在$的左边)

%去掉右边(键盘上#在$的右边)

单一符号是最小匹配,两个符号是最大匹配

${#var}:可以输出变量的长度

例如:var=abc

Echo ${#var} ============>3

expr:测试反回结果为1表示成功,反回结果为0,表示失败

$?:测试上一条命令的执行结果,返回结果是0表示成功,返回结果为1表示失败

ls命令:

ls -A:显示除”.”和”..”外的所有文件

ls -a:列出所有以”.“点开头的隐藏文件

Basename:命令用于去掉路径信息,返回纯粹的文件名,如果指定的文件的扩展名,则将扩展名也一并去掉。

basename的语法是:basename[选项][参数]

例 如:basename /home/test/test.txt .txt===》test

例如:basename /home/test/test.txt=》test.txt

basename $0值显示当前脚本或命令的名字

$# 是传给脚本的参数个数

$0 是脚本本身的名字

$1 是传递给该shell脚本的第一个参数

$2 是传递给该shell脚本的第二个参数$@ 是传给脚本的所有参数的列表

$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个

$$ 是脚本运行的当前进程ID号

$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误

Z\c :测试字母Z是否悬于行尾

Substr:分隔字符串(${str:begin:len})

数组:用${#数组名[@或*]}可以得到数组的长度

用${数组名[下标]} 下标是从0开始,下标是: *或者@得到整个数组内容

nl filename:可以用来显示文件行号

获取字符串的长度:length=${#var}

df用来检查linux服务器的文件系统的磁盘空间占用情况

命令格式:

df 选项 文件:显示指定磁盘的可用空间如果没有文件名被指定,则所有当前被挂载的文件系统的可用空间将被显示

strings:打印文件中可打印的字符

linux 笔记 (1)的更多相关文章

  1. 【Linux笔记】Linux目录结构

    [Linux笔记]Linux目录结构   本文内容整理自网络,以作参考. /:根目录,位于linux文件系统目录结构的顶层,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib ...

  2. Linux 笔记 #03# 在 Debian远程服务器上运行 Java socket程序

    我试图做什么:把我的破代码放到服务器上运行,并成功与客户端进行 socket通信. 预备环境:刚安装好 MySQL 和 JVM 的 Linux远程服务器(Debian 8)一台. 主要有如下几个步骤: ...

  3. 《学渣Linux笔记》——关于.bashrc与profile(涉及交互式与非交互式、登录与非登录shell)

    <学渣Linux笔记>--关于.bashrc与profile(涉及交互式与非交互式.登录与非登录shell) 1.基本概念(个人理解) 交互式shell:等待用户输入,并执行相应操作的sh ...

  4. 《学渣Linux笔记》——更改ls命令的输出颜色和命令提示符颜色(二)

    <学渣Linux笔记>--更改ls命令的输出颜色和命令提示符颜色(二) II.更改命令提示符颜色 命令提示符的显示格式是由变量PS1决定的,首先我们查找GNU官方手册,发现如下内容(不是我 ...

  5. Linux笔记(二)

    Linux笔记(二) 一.软件包管理 1.rpm命令使用:Linux安装软件包的三种方法 rpm工具类似于Windows的exe文件,可以直接进行安装,而且安装路径和文件名一般都是固定好的. 在Cen ...

  6. linux笔记(一)——基本命令和快捷键

    linux笔记(一) 1.常用BASH快捷键 编辑命令 快捷键 作用 Ctrl + a 移到命令行首 Ctrl + e 移到命令行尾 Ctrl + xx 在命令行首和光标之间移动 Ctrl + u 从 ...

  7. Ubuntu/Linux 笔记应用 为知笔记(支持markdown)

    发现网易云笔记没有Linux,但是为知笔记有Linux版本,且支持markdown格式 sudo add-apt-repository ppa:wiznote-team sudo apt-get up ...

  8. Linux 笔记 #04# Installing Tomcat 8 on Debian

    失败一 ※ 失败二  ※ 失败三 ※ 完 1- 确认机型: root@iZwz:~# lsb_release -a LSB Version: core-2.0-amd64:core-2.0-noarc ...

  9. Linux笔记-Linux的命令初解1

    我是一个Linux的初学者,经验肯定没有大牛们那么全面,但是我很想把自己在学习过程中的所有所学和一些自己的感悟写下来. 首先我主要看的书为<鸟哥的私房菜>,这是一本非常棒的书,但是你会发现 ...

  10. linux 笔记的注意事项

    声明:本人Linux的笔记是根据<鸟哥私房菜>而写的 command [-option] parameter1 parameter2 ... command 是命令的名称: [ ]中括号是 ...

随机推荐

  1. useEffect的那些坑,你知道多少

    @charset "UTF-8"; .markdown-body { line-height: 1.75; font-weight: 400; font-size: 14px; o ...

  2. DNSPY调试引用dll

    (1) 点击"调试",选择需要调试的可执行程序 (2) 点击"确定"后,打开程序,再点击"调试"-"窗口"-模块 (3) ...

  3. JavaScript在SublimeText中的配置

    1.系统安装配置Node.js https://nodejs.org/en/ 2.Sublime 依次点击 菜单栏 Tools => Build System => New Build S ...

  4. 阿里云手工配置Nginx

    Nginx服务器是网站反向代理,负载均衡,以及动静分离的神器,由于是第一次在阿里云上配置这个,花费了大半天,终于配置成功了.下面简要的介绍下其流程,以备后面又搞忘了.前提是自动装装不上 购买阿里云服务 ...

  5. django-channels如何向组内特定成员推送信息的解决方案

    测试版本: python 3.8 djnago 3.2 channels 3.0 需求 向channels的小组内某(些)个特定成员推送信息,而不是向组内所有人员群发 实现原理 websocket 三 ...

  6. 第9讲、深入理解Scaled Dot-Product Attention

    Scaled Dot-Product Attention是Transformer架构的核心组件,也是现代深度学习中最重要的注意力机制之一.本文将从原理.实现和应用三个方面深入剖析这一机制. 1. 基本 ...

  7. Java 删除目录下相同文件

    摘要:通过MD5算法对指定目录下的文件去重. 背景   之前写了一篇博客<Java判断两个文件是否相同>,介绍如何校验两个文件内容是否相同,但是,不适用于对目录下文件去重的场景,故对其进行 ...

  8. Java11 ThreadLocal的remove()方法源码分析

    1. ThreadLocal实现原理 本文参考的java 版本是11. 在讲述ThreadLocal实现原理之前,我先来简单地介绍一下什么是ThreadLocal.ThreadLocal提供线程本地变 ...

  9. CF1928G Vlad and Trouble at MIT

    CF1928G Vlad and Trouble at MIT Vlad and Trouble at MIT Problem MIT的学生宿舍可以用一棵有\(n\)个顶点的树来表示,每个顶点代表一个 ...

  10. crictl基础操作

    # 1. 查看机器上的镜像列表 crictl images ls # 2.删除机器上没用使用的镜像 crictl rmi --prune