Linux 常用命令

来源:互联网 发布:淘宝网店开店要多少钱 编辑:程序博客网 时间:2024/06/17 07:48

文件

  • 切换工作目录:cd
    • ..:切换到上级目录
    • -P /opt/xx:切换到 “/opt/xx” 目录下
    • xxx:切换到当前目录的“xxx”文件夹下
  • 查看文件 :ls
    • -l:列出文件详情(List)
      • 文件属性:rwx(属主)r-x(组权限)r-x(其他)。d开头表示是目录。p表示是命令管道文件。s表示是socket文件。c表示字符设备文件
      • 文件硬链接数量:多个指向同一文件。
      • 所有者
      • 所属用户组
      • 文件大小
      • 修改时间
      • 文件名
    • la:列出当前目录下所有文件和目录(All)
  • 修改文件/目录的访问权限:chmode
    • chmod o-w+x file1:给当前目录下的file1文件,删除其他用户(Other)写权限,增加其他用户执行权限
    • chmod a-w,u+w,g+rx,o-rx file1:所有用户去掉写权限,文件属主增加写权限,当前群组用户增加读和执行权限,其他用户去掉读取和执行
    • chmod a=rwx,g=rx,o=rx file1:同上
  • 创建目录:mkdir
    • -p:若无父目录,则创建父目录
  • 删除空目录:rmdir
  • 查看文件内容:cat
    • cat ./11.txt:查看当前目录下的11.txt文件内容
  • 拷贝:cp
    • cp ../opt/xxx ./xxx1 :讲opt目录下的xxx文件复制到当前目录下并重命名为xxx1
    • cp -i /usr/men m*.c /usr/zh:讲 “men”目录下m开头的所有.c文件复制到zh目录下
  • 移动或重命名
    • -v:打印移动信息
    • -i:交互模式,如提示是否覆盖已有文件
    • mv 111.txt 13.txt ../Music/ :移动一个或多个文件
    • mv 111.txt 11.txt:重命名
    • mv -v text_dir/ ../Music/:打印信息,直观感受是否移动完成
    • mv -v text_dir/ ../Music/
  • 删除文件/文件夹:rm
    • -r :地柜删除,可删除子目录及文件
    • -f:强制删除
  • 在文件系统中搜索某文件:find
    • -type 参数类型。指定搜索文件的类型。
      - -type f:普通文件
      - -type l:符号链接
      - -type d:目录
      - -type s:socket套接字
      - -type p:命令管道文件
    • 目录深度搜索
      • find . -maxdepth 3 -type f:向下最大深度限制为3
      • find . -mindepth 2 -type f:目录深度距离当前最少两个子目录的所有文件
    • 文件时间搜索
      • 访问时间:(-atime/天,-amin/分钟)
      • find . -type f -atime -7:最近七天被访问过的所有文件
      • find . -type f -atime 7:恰好在七天前被访问过的所有文件
      • find . -type f -atime +7:超过七天前被访问过的所有文件
      • 修改时间:(-mtime/天,-mmin/分钟)
      • 变化时间:(-ctime/天,-cmin/分钟)
    • 文件大小搜索
      • b(块,512字节)。c(字节)。w(2字节)。k(千字节)。M(兆字节)。G(吉字节)。
      • find . -type f -size 10K:等于10K的文件,也可用+/-符号。
    • find .:列出当前目录及目录下的所有文件和文件夹
    • find Desktop/ -name "*.txt":在 Desktop 目录下查找以.txt结尾的文件名
    • find Desktop/ -iname "*.txt":同上,忽略大小写
    • find . -name "*.txt" -o -name "*.pdf":当前目录及子目录下查找所有以.txt和.pdf结尾的文件
    • find . -regex ".*\(\.txt|\.pdf\)$":基于正则表达式匹配文件路径
    • find . -iregex ".*\(\.txt|\.pdf\)$":同上,忽略大小写
    • -
  • 在文本文件中查找某个字符串:grep
    • -c:只输出符合条件行的数量
    • -i:不区分大小写
    • -l:只输出匹配的文件名
    • -h:多文件时不显示文件名,默认显示
    • -n:显示匹配行和行号
    • -v:显示不包含匹配文本的所在行
    • -s:不显示不存在或无匹配文本的错误信息
    • grep -s "你好" 11.txt 13.txt 14.txt:“14.txt”文件不存在是不显示报错信息继续查找
    • cat 11.txt | grep "b" -nv:输出11.txt文件中不含“b”的行和行号
    • grep "a" . -r -n:递归但钱目录下的文件并输出匹配行和行号

系统

stat 显示指定文件的详细信息,比ls更详细

who 显示在线登陆用户

whoami 显示当前操作用户

hostname 显示主机名

uname 显示系统信息

top 动态显示当前耗费资源最多进程信息

ps 显示瞬间进程状态 ps -aux

du 查看目录大小 du -h /home带有单位显示目录信息

df 查看磁盘大小 df -h 带有单位显示磁盘信息

ifconfig 查看网络情况

ping 测试网络连通

netstat 显示网络状态信息

man 命令不会用了,找男人 如:man ls

clear 清屏

alias 对命令重命名 如:alias showmeit=”ps -aux” ,另外解除使用unaliax showmeit

kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。

软件

dpkg (Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况下。

比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。

sudo dpkg -i tree_1.5.3-1_i386.deb 安装软件

sudo dpkg -r tree 卸载软件

注:将tree.deb传到Linux系统中,有多种方式。VMwareTool,使用挂载方式;使用winSCP工具等;

APT(Advanced Packaging Tool)高级软件工具。这种方法适合系统能够连接互联网的情况。

依然以tree为例

sudo apt-get install tree 安装tree

sudo apt-get remove tree 卸载tree

sudo apt-get update 更新软件

sudo apt-get upgrade

将.rpm文件转为.deb文件

.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。

sudo alien abc.rpm

用户

/etc/passwd 存储用户账号

/etc/group 存储组账号

/etc/shadow 存储用户账号的密码

/etc/gshadow 存储用户组账号的密码

useradd 用户名

userdel 用户名

adduser 用户名

groupadd 组名

groupdel 组名

passwd root 给root设置密码

su root

su - root

/etc/profile 系统环境变量

bash_profile 用户环境变量

.bashrc 用户环境变量

su user 切换用户,加载配置文件.bashrc

su - user 切换用户,加载配置文件/etc/profile ,加载bash_profile

更改文件的用户及用户组

sudo chown [-R] owner[:group] {File|Directory}

例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop

要想切换此文件所属的用户及组。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz