一、语法

  1. :(冒号)即是linux系统命令,也是shell的内置命令,作用是没有作用,常用作占位符

    1. #!/bin/bash
    2. : "还没想好要在这里写啥代码"
  2. 变量后面的冒号表达式,如果变量为空,则变量的值为冒号后面的值

    1. #!/bin/bash
    2. ${JAVA_HOME:"如果JAVA_HOME为空,则JAVA_HOME等于这条字符串"}
    3. ${JAVA_HOME:?"如果JAVA_HOME为空,则JAVA_HOME等于这条字符串"}
  3. 变量赋值中 $( ) 与 功能类似,都是用来动态重组命令行的

    1. #!/bin/bash
    2. root=$(pwd) #给root变量赋值pwd命令运行后的结果
    3. #等价于
    4. root=`pwd`
  4. %的用法

    1. #!/bin/bash
    2. file=/etc/home/name.txt
    3. echo ${file%".txt"} #表示删除file中最后一个.txt字符串, 打印出/etc/home/name
  5. for循环 ```shell

    !/bin/bash

    for file in ls fname*; do echo $file rm $file done

  1. <a name="k7IbO"></a>
  2. ### 二、Linux常用命令
  3. 1. install命令类似于cp命令
  4. 1. basename去掉文件路径的目录部分和指定的且匹配到的后缀
  5. ```shell
  6. #!/bin/bash
  7. basename=`basename /home/maozj/test.txt` #basename=text.txt
  8. basename=`basename /home/maozj/test.txt .txt` #basename=test
  1. wc命令用来统计字节数、行数、单词数

wc -w 统计单词数

分割合并文件

split big.zip -b 10m new ;按10m大小分割big.zip
cat new
> big.zip ;把所有new_文件合并到big.zip

查看二进制文件

hexdump -C floppy.img ;以十六进制和ascii格式打印
hexdump [选项] [文件]…
-n length 只格式化输入文件的前length个字节。
-C 输出规范的十六进制和ASCII码。
-c 单字节字符显示。
-d 双字节十进制显示。
-o 双字节八进制显示。
-x 双字节十六进制显示。
-s 从偏移量开始输出。
-e 指定格式字符串,格式字符串包含在一对单引号中,格式字符串形如:’a/b “format1” “format2”‘。

设置路由

route del default //删除默认路由
route add 192.168.3.131 gw 192.168.50.254 enp0s3 // 设置某个ip的路由走向
route add default gw 192.168.4.1 wlx200db01056a2 //设置默认路由的走向

软连接

ln -s srcfile destfile

dd创建二进制文件

dd if=/dev/zero of=floppy.img bs=512 count=2880 //创建一个512Bx2880的文件,并且用0填充

格式化文件系统

mkfs.msdos floppy.img //格式化某个文件为fat12格式

apt用关键字搜索软件包

apt-cache search 关键字

xubuntu安装主题

sudo apt install gnome-themes-ubuntu

新建用户

useradd -m xxx //新建xxx用户,并且生成用户目录
passwd xxx
usermod -a -G sudo xxx //添加到sudo权限
usermod -s /bin/bash xxx