linux的基本操作2

时间:2023-12-23 13:34:20

/dev/ha[a-d]    IDE硬盘(过时了)
/dev/sd[a-p]    U盘,scsi,sata,ssd硬盘(流行)
/dev/cdrom     光盘 CD-ROM
/dev/mouse    鼠标

fdisk -l                 显示当前挂载的硬盘设备(其中有一个是/dev/sda1)

df         查看某个设备上还有多少磁盘空间
df -h        以人类可读的格式查看磁盘空间
df -i         查看设备使用的inode索引数量
du        查看某个目录下有没有大文件
du -sh * | sort -nrs   查看当前目录下文件占用空间(按大小降序排列)

sort text1       按照排序输出
sort -n text1        按照数字排序输出
sort -M text1       按照月分排序输出(centos下好用,ubuntu下不好用)

grep f text1         在text1文本里搜索字符f
grep -v f text1        反向搜索f(搜索没有f的行)
grep -n f text1        在搜索结果中加上行号
grep -c f text1        显示搜索到的行数
grep -e f -e d text1      多条件搜索(搜索f和d)
grep [fd] text1        正则匹配搜索

tar -cvf             压缩包的文件名 需要压缩的文件或目录

tar -cvf test.tar mulu/        创建tar压缩文件
tar -cvf test.tar mulu/ mulu2/   创建tar压缩文件

tar -xvf test.tar            解压缩tar文件

tar -zxvf test.tar             解压缩gzip压缩过的tar文件

bash_shell

bash              进入子shell(可以多次执行,进入多层子shell)
exit                退出一层子shell
ps --forest              查看进了几层shell(查看子shell)
ps -f               显示ppid父进程

pwd;ls;cd /etc;ls          " ; "这个分号可以一次执行多条指令

which ps              寻找指令的文件位置,centos下和ubuntu下执行结果不一样
type cd              也是查看指令是外部指令
type exit

history                     记录历史指令(最多存1000条)
/home/your_name/.bash_history     这个文件是记录历史指令的
history -a                将内存里的历史指令写入到上面的文件里

alias -p                显示已经定义好的指令别名
alias li='ls -l;pwd'           定义指令别名:li是自己定义的别名名称,ls -l是指令,定义的指令别名只在本shell中有效
unalias li

printenv           查看全局环境变量
echo $HOME       输出全部变量中的HOME变量
ls $HOME        用HOME变量来执行指令
ls $HOME       就相当于 ls /home/laomeng

set              显示局部环境变量
一般来讲,全局变量都用大写,局部变量都用小写
my_var=jubuBianliang    定义局部变量
my_var='ju bu bian liang'   等号附近不能有空格,如果变量内容有空格,加上双单引号,定义的局部变量,只在本shell进程中有效

my_var1='i m global var'
export my_var1      将变量导入全局变量
bash
echo $my_var1
unset my_var1       删除变量

echo $PATH
PATH=$PATH:/home/your_name     给PATH变量加入新路径
echo $PATH

添加全局path变量:
vim /etc/profile
在最后加上(另起一行)
export JAVA_HOME=/home/laomeng/jdk1.8_u152
export CLASSPATH=JAVA_HOME/lib
保存并退出
然后执行 source /etc/profile
让其不用重启就生效

mytest=(one two three four five)   定义一个数组变量
echo ${mytest[2]}          访问数组变量的第三个元素
echo ${mytest[*]}          输出全部数组
mytest[2]=333               修改数组变量第三个元素的值为333
unset mytest[2]             删除第三个元素
unset mytest            删除整个数组