常用linux命令(linux小神之路)

基础知识
  • 挂载:系统目录与硬盘分区映射的过程
  • 挂载点:被挂在的目录(windows系统中的盘符)
  • 挂载类型:手动、自动
基本操作

    1. 创建目录
      mkdir dir_name
      mkdir -p dir1/dir2/dir3(创建层级目录,如果过程目录不存在,需要加-p)
    2. 创建文件
      touch file_name(对已存在的文件touch,会改变修改时间)
    3. 创建用户(此命令需要root账户)
      useradd -g gid -d home_dir -u user_name(gid组id,-d定义home文件位置,-u用户名)
    4. 创建组(此命令需要root账户)
      groupadd group_name

    1. 移动目录或文件并改名字(不加新名字则不改名)
      mv dir1/dir2 dir3/dir4/new_name(将dir1里面的dir2移动到dir3里的dir4,并重命名为new_name)
    2. 追加文件内容
      echo file_content > file_name双箭头也可以>>
    3. 复制目录或文件并改名字(不加新名字则不改名)
      cp -R dir1/dir2 dir3/dir4/new_name(将dir1里面的dir2复制到dir3里的dir4,并重命名为new_name)
    4. 修改用户(此命令需要root账户)
      useradd -g gid -d home_dir -u user_name -l new_username(gid组id,-d定义home文件位置,-u用户名,-l新用户名)
    5. 修改用户密码
      passwd user_name
    6. 修改组(此命令需要root账户)
      groumod -g gid -n new_group_name(-g修改组id,-n修改组名)

    1. 删除目录或文件
      rm -rf file_name(-r 递归删除,-f 强制删除,不用提示)
    2. 删除用户(此命令需要root账户)
      userdel -r user_name
    3. 删除组(此命令需要root账户)
      groudel group_name(组内有用户时,删不了)
    1. 查看文件内容
      more(逐行查看)、less、cat、head(内容前几行)、tail(内容后几行)、wc(文件多少行)

      • 对有内容输出的指令,都可以追加重定向
        cat file_name1>> file_name2(将文件1的内容追加到了文件2,不会输出)
        
    2. 查看文件详细信息

      ls -l
      drwxr-xr-x  2 millions  staff   68  9  5 14:53 dir3
      -rw-r--r--@ 1 millions  staff  968  9  5 17:09 file1.txt
      • 权限信息
        第一位的
        -(普通文件)
        d(目录)
        l(软链接文件)
        rwx(读写执行)第一列:主人权限,第二列:同组权限,第三列:其他组权限
      • 其他信息
        数字(硬链接数量)
        主人
        组别
        文件大小
权限操作
  • 相对设置权限
    1. chmod u+/-rwx file_name 给用户设置权限
    2. chmod g+/-rwx file_name 给同组组设置权限
    3. chmod o+/-rwx file_name 给其他组设置权限
    4. chmod u+/-rwx, o+/-rwx, g+/-rwx file_name 同时给多个对象设置权限
  • 数字绝对权限设置(不是再添加或减少权限,而是直接覆盖)
    A(用户)B(同组)C(其他组)
    0 没有权限
    1 执行权限
    2 写权限
    3 写、执行权限
    4 读权限
    5 读、执行权限
    6 读、写权限
    7 全部权限
    chmod ABC file_name
    <ol><li>
    chmod 123 file_name` 用户执行权限,同组写权限,其他组写执行权限。
  • !(强行写保存,如果有对上级目录的权限,强行可以成功)
grep 命令

grep content path 会将查找内容所在行输出

which 命令( 查询系统命令所在文件)
which cd
/usr/bin/cd
查看系统活跃进程
ps -a
1.查进程
    ps命令查找与进程相关的PID号:
    ps a 显示现行终端机下的所有程序,包括其他用户的程序。
    ps -A 显示所有程序。
    ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
    ps -e 此参数的效果和指定"A"参数相同。
    ps e 列出程序时,显示每个程序所使用的环境变量。
    ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
    ps -H 显示树状结构,表示程序间的相互关系。
    ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
    ps s 采用程序信号的格式显示程序状况。
    ps S 列出程序时,包括已中断的子程序资料。
    ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
    ps u 以用户为主的格式来显示程序状况。
    ps x 显示所有程序,不以终端机来区分。

    最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
    ps aux | grep program_filter_word,ps -ef |grep tomcat

ps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。

2.杀进程
   使用kill命令结束进程:kill xxx
   常用:kill9 324
   Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME

3.进入到进程的执行文件所在的路径下,执行文件 ./文件名
查看系统性能
top
查看文件大小(最小单元4k)
du -h file_name
查看当前用户
whoami
cd ~ 切换到用户根目录
cd / 切换到系统根目录 
su - 切换到root账户
su root 切换到root身份,目录不变
用户操作
dscacheutil -q group // 查看所有用户和组
groups user_name // 查看指定用户所属组
查看本地ip
命令 ifconfig | grep "inet " | grep -v `127.0.0.1
结果 inet xxx.xxx.x.xxx netmask 0xffffff00 broadcast 1
xxx.xxx.x.xxx
查看开放端口

a. netstat -nat | grep <端口号>
b. netstat -nat |grep LISTEN
c. lsof -i

查看当前时间
date 查看
date -s "时间" 设置
查看系统分区
df -lh
查看端口号占用
sudo lsof -P -itcp:80 
结束进程
kill -9 pid
查看开机时间
命令 last | grep reboot
结果 reboot    ~                         Tue Aug 15 15:13 
管道

|:前一个命令的输出是下个命令的输入,

ls -l | wc 查看当前目录文件个数
ls -l | head -3 查询到的结果前两个输出
ls -l | tail -5 查询到的结果后4个输出
ls -l | tail -5 | head -3 可以组合或连续使用
find 命令
  • find path -option value
find \ -name file_name 从根目录开始递归查找文件名为file_name
find \ -maxdepth 4 -name file_name 限制查找最深目录层次为4
find ./ -name "*.sh" 模糊查找,.sh结尾的
find ./ -name file_name -type f/d 指定查找的是文件还是目录
find ./ -name file_name -size 10 找到大小为5120字节的目标,单位不写默认半k,c(字节)k(k字节)m(兆)
find ./ -name file_name -size +10k 找到大于10k字节的目标
find ./ -name file_name -size -10k 找到小于10k字节的目标
find ./ -perm 644 查找权限为644的目标
find ./ -user user_name 根据用户名查找
find ./ -group group_name 根据组别查找
软链接(用于合理分配硬盘资源)

ln -s 原文件路径 要链接到的路径(如果不在同一路径,源文件要写绝对路径)

ln -s millions/workplace ../workplace
硬链接(一个文件有多个名字,互为硬链接)
  • 优点:
    1. 可以防止文件被误删除
    2. 硬链接比复制文件省很多存储空间
    3. 如果多人操作一个文件时,可以通过添加硬链接形式
  • 注意:
    1. 手动不可以设置目录的硬链接,但是创建新目录时,系统会自动给目录加硬链接
    2. 源文件不需要用绝对路径
    3. 硬链接源文件和链接文件要在同一硬盘
ln 源文件 硬链接文件
ln sorce.txt link.txt
ls -lia -i 显示硬链接编号 -a 显示隐藏文件
任务调度(特定时间执行特定任务)
  • 不限制用*代替 ,命令要写绝对路径
  • 格式
    分钟 小时 日期 月份 星期 执行命令
    32 17 4 4 6(星期日7) ./xx/xx/xx/xx.sh
    2 8-20/3 * * * ./xx/xx/xx/xx.sh 8点到20点每隔3小时执行
    2 17 1,15 * * ./xx/xx/xx/xx.sh 1号和15号执行
crontab -e 编写调度任务
crontab -l 查询调度任务
修改文件的主人、组别
chown 主人.组别
chown -R millions.group1 aaa.txt 将aaa.txt的主人改为million,组别为group1,-R递归设置
查看、设置系统最大打开文件数
ulimit -a 查看
ulimit -n 1024 设置
关机
  1. 立即关机是
sudo halt

或者

sudo shutdown -h now
  • 10分钟后关机
sudo shutdown -h +10
  • 晚上8点关机
sudo shutdown -h 20:00
  • 指定时间关机
sudo shutdown -h yymmddhhmm
重启
  • 立即重启
sudo reboot 

或者

sudo shutdown -r now
  • 指定时间重启
sudo shutdown -s yymmddhhmm
睡眠
  • 立即睡眠
sudo shutdown -s now
  • 指定时间睡眠
sudo shutdown -s yymmddhhmm
取消设置
sudo kill pid
查找文件大于100m的

find / -type f -size +100M

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值