Linux的常用命令

注:以下是在 Xshell 6 中编译执行

1、新建用户

  adduser 用户名称     或    useradd 用户名

2、删除用户

  userdel 用户名     ( userdel  -r  用户名       用户文件一并删除)

3、切换用户

  su 用户名          (普通用户切换超级用户: su root   再输入密码 ; 超级用户切换到普通用户: su 用户名   或者  exit   )

4、修改用户

  usermod 类型 用户名              例如: usermod -g 1001 lucy   即将用户名为lucy的id修改成1001  

  修改用户其他类型方法的使用说明如下:

    -c  后面接账号的说明,即 /etc/passwd 第五栏的说明栏,可以加入一些账号的说明。
    -d  后面接账号的家目录,即修改 /etc/passwd 的第六栏;
    -e  后面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 内的第八个字段数据啦!
    -f  后面接天数为 shadow 的第七字段。
    -g  后面接初始群组,修改 /etc/passwd 的第四个字段,亦即是GID的字段!
    -G  后面接次要群组,修改这个使用者能够支持的群组
    -l  后面接账号名称。亦即是修改账号名称, /etc/passwd 的第一栏!
    -s  后面接 Shell 的实际档案,例如 /bin/bash 或 /bin/csh 等等。
    -u  后面接 UID 数字啦!即 /etc/passwd 第三栏的资料;
    -L  冻结密码
    -U  解冻密码

5、新建组

  groupadd 组名

6、修改组信息

  groupmod  组名             例如:groupmod -n group0 lucy  即将用户lucy下存在的组名改为group0

7、新建目录

  mkdir 目录名

8、删除目录

  rm 目录名   (删除非空目录)

  rmdir 目录名   (删除空目录)

9、新建文件/修改最近访问时间

  touch 文件名       如果指定的文明名不存在,创建该文件。如果存在,修改最近访问时间为当前时间

10、拷贝文件或者目录

  cp 文件名    或者   cp -r 目录名

11、链接

  创建硬链接(防止误删除,多个指针指向同一个inode)

    In 文件名

  创建软连接(创快捷方式)

    In -s 文件名

12、移动

  mv 文件名

13、删除

  rm 文件名

14、压缩文件

  gzip 文件名           ( .gz 结尾的文件 )

  bzip2 文件名           ( .bz2 结尾的文件 )

  zip 文件名           ( .zip 结尾的文件 )

15、解压缩

  gunzip 文件名           ( .gz 结尾的文件 )

  bunzip2 文件名           ( .bz2 结尾的文件 )

  unzip 文件名           ( .zip 结尾的文件 )

16、归档/拆档

  归档: tar cvf 文件名                  拆档: tar xvf 文件名  

  tar
    -c 创建归档文件
    -x 创建拆档文件
    -v 打印细节
    -f 指定归档/拆档文件
    -j bzip2格式 xxx.tar.bz2
    -z gzip格式 xxx.tar.gz

17、清理终端屏幕(非删除屏幕数据)

  clear

18、查看文件

  ls -l      (查看所有文件的详细信息)

    -a  列出包括.a开头的隐藏文件的所有文件
    -A  通-a,但不列出"."和".."
    -l  列出文件的详细信息
    -c  根据ctime排序显示
    -t  根据文件修改时间排序  

  ls /home    (查看家目录下的所有目录及文件)

19、查看指定命令的用法

  man 命令           例如:man ls  可以查看ls有哪些用法,之后按 q 退出

20、预览文件里的详细内容如代码

  more  或者  less

  cat  或者  tac  ( 链接后显示 )

  nl  ( 添加行号后显示 )

  tail  ( 预览末尾10行 )

  head  (  预览开头10行 )

21、切换目录

  cd  或  ~cd  ( 回到家目录 )

  cd/  ( 切换到根目录 )

  cd /home/lucy  ( 切换到/home/lucy目录下 )

22、输出当前目录地址

  pwd  ( 一般在切换完目录后查看当前目录地址,确保在自己需要编辑的目录下 )

23、软件安装

   apt    

    apt update  ( 更新资源 )

    apt install 安装包  ( 安装软件包、解压安装 )

24、修改文件权限

  通过表达式来修改

    chmod g-r 文件名  ( 给文件的同组人(g)读(-r)的权限 )

    chmod o+w 文件名  ( 给文件的其他人(o)写(w)的权限 )

25、vim

  vi 文件名:    

    1. 打开vi 编写 保存
    2. 新建文件,通过vi打开文件
    3. 直接打开一个文件

  vim模式:

    命令行模式:     

      复制  yy
      粘贴   p
      删除   dd 一行    dw 一个词
      回退  u
      替换当前行  cc

    编辑模式:【左下角 insert】

      写代码

    底行模式:【底行可以输入】

      保存  :w
      另存为  :w other.txt
      退出  :q
      保存退出  :wq
      不保存退出  :q!
      查找  /larry n表示查找下一个
      替换  :1,$s/larry/8888/g
      复制  :1,4co55
      剪切  :1,4m$

26、在超级用户root下为用户增加管理员权限

  sudo:

    vi /etc/sudoers  打开配置文件,将  lucy> ALL=(ALL:ALL) ALL   写入配置文件20行下面,lucy即成为管理员,用于高级用户操作

     sudo more /etc/shadow  查看所有用户信息( 在用户lucy下执行,测试是否有管理员权限 )

27、其他重要命令

  reboot  重启云服务器

  kill -9 pid   杀死所有进程

  ps -ef/grep java  在所有进程中找到java相关的进程

  sleep 1000s    或    sleep 1000s &  将当前进程放到后台执行

  grep 2019 /etc/passwd  查找passwd文件中包含2019的行的内容

  find ./-name '*.txt'  查找当前目录中所有的.txt文本文档

/********************************************************************************************************************************************************   安装软件    **************************************************************************************************/

1、apache2
  1) 安装步骤:
     sudo apt install apache2
    默认情况下安装后会自动启动

      sudo service apache2 status
      sudo service apache2 start
      sudo service apache2 restart
      sudo service apache2 stop

  启动apache2

    apache的部署目录

      /var/www/html/lucy/index.html

  2) 测试
    浏览器地址栏----->    http://136.36.36.22   ( 阿里云账户上的公用IP地址 )
              测试结果:出现=> /var/www/html/index.html

2、vsftpd安装

  作用:可以使用ftp工具或者命令将客户机上的文件上传到服务器上。

  server: ftp服务器程序 vsftpd

  client: ftp客户端程序 fillzilla、smartFTP

  关闭进程:
    ps -ef | grep vsftpd
    kill -9 pid
    或者
    killall vsftpd
  删除软件(apt install / apt remove)
  删除软件(解压 / 删除)
  sudo apt remove --purge vsftpd


  安装过程:
    1) 使用apt安装
      sudo apt install vsftpd
    2) 测试
      vsftpd -version
        测试结果: vsftpd: version 3.0.3
    3) 连接测试
      ftp 152.136.136.220
        提示输入用户名密码,说明可以访问ftp服务器
        如果提示timeout,说明网络有可能不同,对方添加了防火墙


      解决方案:
        去阿里云的管理页面中打开21端口即可
    4) 如果使用的是fillzilla
      将被动模式变为主动模式
    5) 这时候可以查看,但是无法上传文件
      解决方案:
        配置vsftpd
          sudo vi /etc/vsftpd.conf
            将31行的注释给删除即可
              write_enable=YES
    6) 重启vsftpd
      sudo service vsftpd restart

    注!!!若 /usr/sbin不在PATH中

      PATH 环境变量
        /home/ubuntu/bin:
        /home/ubuntu/.local/bin:
        /usr/local/sbin:
        /usr/local/bin:
        /usr/sbin:
        /usr/bin:
        /sbin:
        /bin:
        /usr/games:
        /usr/local/games:
        /snap/bin:/opt/node-v10.16.2/bin:
    终端
      ls
      vsftpd

      解决方案:
        sudo vi /etc/profile
          追加
            export PATH=$PATH:/usr/sbin
        source /etc/profile

3、subversion 安装
  将本地代码保存到服务器端,具有版本控制。
  客户端:tortoiseSVN/axure/webstorm
  服务端:subversion
  1) 安装
    sudo apt install subversion
  2)测试
    svn help
  3) 创建仓库,初始化仓库
    进入到家目录
      cd
    在家目录中创建仓库目录
      mkdir repository
    将仓库目录初始化为svn远程仓库
      svnadmin create repository
        conf db format hooks locks README.txt
  4) 配置仓库信息
    conf
    svnserve.conf svn核心配置文件
      19行 anon-access = read
      20行 auth-access = write
      27行 password-db = passwd
      36行 authz-db = authz
    passwd 用户及密码
      [users]
      terry = terry
      larry = larry
      tom = tom
      jacky = jacky
      boss = boss
    authz 权限
      [groups]
      webui = tom,jacky,boss
      javaee = terry,larry,boss

      [/]
      boss = rw

      [/webui]
      @webui = rw

      [/javaee]
      @javaee = rw
  5) 启动仓库
    svnserve -dr repository

  6) 开放端口 3690
  7) 使用小乌龟链接

4、安装nodejs 【jdk】解压安装
  1) 下载安装包
    https://nodejs.org/dist/v10.16.2/node-v10.16.2-linux-x64.tar.xz

      wget https://nodejs.org/dist/v10.16.2/node-v10.16.2-linux-x64.tar.xz

  2) 解压到/opt中
  3) 配置环境变量
    node的家目录
      NODE_HOME=/opt/node-v10.16.2
      node的可执行文件目录 /opt/node-v10.16.2/bin
    sudo vi /etc/profile
      追加
        export NODE_HOME=/opt/node-v10.16.2
        export PATH=$PATH:/usr/sbin:$NODE_HOME/bin
    source /etc/profile
  4) 测试
    node -v
      测试结果: v10.16.2

        

5、git的应用( window+r  打开cmd)
  1) 初始化本地仓库
    c:/briup/git_web2019
    git init
  2) 查看仓库状态
    git status

  3) 创建文件,并且将文件交给git来追踪(在一起)
    git add *
  4) 提交成为一个版本(结婚)
    git commit -m "xxxx"
    第一次提交的时候需要设置当前用户


    git config --global user.name = "pluslicy"
    git config --global user.email = "licy@briup.com"
  5) 查看提交记录
    git log
  6) 时光穿梭
    git reset --hard commitID
  7) 查看所有提交记录
    git reflog
  8) 忽略文件
    .gitignore

  9) 创建远程仓库 (github/gitee【码云】)

    https://github.com/pluslicy/git-web2019.git
    注意:
      一个本地仓库只能与一个远程仓库绑定,一个项目一个仓库
    1. 远程仓库与本地仓库的绑定
      git remote add origin https://github.com/pluslicy/git-web2019.git

    2. 将本地仓库的代码提交到远程
      git push origin master

    3. 将远程仓库的代码更新到本地
      git pull origin master

  10)多人协作
    1. 组长邀请合作者
    2. 合作者通过邮箱中的邀请连接同意邀请
    3. 合作者就可以提交代码

    git add -> git commit -> git pull -> git push

  11)分支管理
    https://www.liaoxuefeng.com/wiki/896043488029600/900003767775424
  12) git的配置
    用户名 email 远程地址

    查看git的配置信息
      git config --list
    配置信息保存在哪里?
      ~/.gitconfig

    项目根目录 .git
      git-web2019/.git

  

原文地址:https://www.cnblogs.com/lidyfamily/p/11384303.html