ubuntu基本操作

-----------------------------查看目录----------------------------------------------

ls , 即 list, 列出目录下的所有项示例:
    查看当前目录  ls
    查看 /home/shaofa 目录   ls /home/shaofa
    以详细模式查看 ls  -l  /home/shaofa 其中,-l 为参数,参数一般以 - 开头
    1 在输入命令和路径时,按 TAB 键可以自动补全ls /ho  ls /home
    2 输入历史可以翻阅  按 ↑ ↓ 箭头键可以上下翻阅
    3 宿主机 与 虚拟机之间可以拷贝粘贴,一般情况下,文本和文件都可以拷贝

--------------------------切换目录-------------------------------------

pwd , 即 print working directory 显示当前工作目录
cd , 即 change directory , 切换目录
    示例:切换到用户主目录
    cd 切换到某个目录
    cd /home/shaofa/example
几个特殊的目录:
    ~  代表当前用户的主目录
    .  代表当前目录
    ..  代表上一级目录
    cd ~  切换到主目录
    cd ~/example 切换到主目录下的example目录
    cd ../www  切换到上级目录、再到www子目录

--------------------------------目录操作-----------------------------------------------

mkdir ,即 make directory 创建目录
mkdir  abc
mkdir  -p  abc/123/test
使用 -p 参数,可以将路径的层次目录全部创建
rmdir ,即 remove directory 删除空目录
rmdir abc
如果目录非空,则删除失败

---------------------------------归档压缩----------------------------------------------

tar , 即 tape archive 档案打包
创建档案包
    tar  -cvf  example.tar  example
其中,
    c ,  表示 create 创建档案
    v ,  表示 verbose 显示详情
    f ,  表示 file
也可以多个目录打包  tar -cvf  xxx.tar  file1  file2  file3

还原档案包
    tar  -xvf  example.tar
    tar  -xvf  example.tar  -C  outdir
    其中,-C 参数指定目标目录,默认解到当前目录下

先前的tar格式并没有压缩,体积较大
并档并压缩
    tar  -zcvf  example.tar.gz  example
解压缩
    tar  -zxvf  example.tar.gz
    tar  -zxvf  example.tar.gz  -C  outdir
通常我们所见的,都是 *.tar.gz 这种格式

-------------------------------软连接----------------------------------------------

软链接,即 Windows 下的 "快捷方式"
    使用 ln 命令 (link) 来创建软链接
    ln  -s  source  link
其中,-s 表示 soft 软链接 ( 默认为硬 )比如
    ln  -s  example  example2    

软链接的特点:
    1 删除软件接,对原文件没有影响
    2 删除原文件,则软链接失效
    以 ls -l 查看文件详情时,可以看到目标路径
    比如,ls -l /
    可以发现,/bin 实际指向的是 /usr/bin 目录

-----------------------------------添加用户--------------------------------------------

比如,添加一个用户
    sudo useradd -m test1
其中,sudo, 表示以管理员身份执行

1 添加用户
    sudo useradd  -m test1
    其中,-m参数表示在 /home 下添加用户目录
2 修改用户密码
    sudo passwd test1
3 删除用户
    sudo userdel test1

1 在登录系统时,默认不允许以 root 用户登录
2 只有特殊的用户,才能执行 sudo
比如,yanjingliang可以执行sudo,但test1不行
Linux下,把能执行sudo命令的用户叫 sudoer

-----------------------------超级用户 root------------------------------------------

超级用户 root
类似于 Windows 下的 Administrator 用户
切换到 root 用户,有全部权限,可以直接 useradd 等命令

1首次使用时,需要给 root 设置密码
    sudo passwd root
2 切换到 root 用户
    su root
其中,su 表示 switch user
3 退出
    exit

su root 仅仅对当前会话 (终端) 有效,不影响当前桌面环境,root 权力太大,需要小心使用

------------------------------------用户组---------------------------------------------

Linux 下可以创建多个用户,可以用组进行管理用户。

比如:
    男生组 boys
        ming  bo  gang  qiang
    女生组 girls
        fang  hong  yue yuan

创建组 groupadd boys
创建用户 useradd -m -g boys ming
其中,-g表示在添加用户,同时将用户加到boys组
修改现有用户到新的组  usermod -g boys shaofa
其中,usermod表示修改用户信息

如何查看用户和组?
    cat /etc/group
    每一行表示一个group的信息,名称 + ID
    如何查看用户列表?
    cat /etc/passwd
    每一行表示一个用户的信息

用户不多时,管理的时候并不使用组的概念
    useradd  a1
    useradd  b1
一个root,两个普通用户a1, b1 ,够用了!
默认地,会给a1用户建立一个同名的组a1 ,也就是说这个组里只有他一个人。

----------------------------以root登录桌面----------------------------------

默认地,无法以root登录 Ubuntu的桌面环境。本文档介绍如何设置,才能以root来登录面。一、设置root密码
    首次执行时,需要修改root密码
    sudo passwd root
    此时,root已经设置了密码,但是还不能用root登录桌面。
二、修改配置
    按以下步骤,执行
1:
    su root  在终端里 切换到 root用户
2 :
    gedit /etc/pam.d/gdm-autologin
    在这一行前面加一个#
    #auth required pam_succeed_if.so user != root quiet_success
    关闭并保存
3:
    gedit /etc/pam.d/gdm-password
    在这一行前面加一个#
    #auth required pam_succeed_if.so user != root quiet_success
    关闭并保存
4:
    关闭虚拟机,重启后生效
三、以root登录桌面
    在登录界面,点下面的’未列出'

    手工输入用户名root,登录

--------------------------------------文件权限-----------------------------------

考虑以下几个方面:
    - owner : 文件的属主 owner
    - r : 文件是否可读 read
    - w :  文件是否可写 write
    - x:    文件是否可以执行 excute

使用 ls 命令查看一个文件
    ls -l simple.txt
    -rw-r--r--. 1 shaofa shaofa 13 4月  21 03:48 simple.txt
    其中,rw-r--r-- 表示该文件的访问权限


------------------------------------修改文件权限-----------------------------

chmod , 即change file mode 修改文件的访问权限
比如,一个文件abc.txt ,想让别人也能修改
    chmod  o+w  simple.txt
    其中,o ,表示 other 别人
    +w ,表示增写 write 权限

chmod a+w abc.txt
    所有人 all 添加w权限
chmod a-w abc.txt
    所有人减去w权限
chmod u+w  abc.txt
    仅用户 user 自己的权限 +w
chmod o-w  simple.txt
    修改别人 other 的权限 -w

只有文件的属主或者root 可以修改文件权限
省略写法
    chmod  +w  simple.txt
    chmod  -w  simple.txt
    默认是修改自己和本组的权限

--------------------------------修改文件属主-------------------------

chown , 即change owner 修改文件的属主
一般来说,每个用户只操作自己的用户目录
所以 chown 命令并不常用
示例:
    1 在 /opt 目录下建立一个文件夹 software
    2 将 software 目录分配给用户 shaofa
        su root
        mkdir /opt/software
        chown -R shaofa /opt/software
        ls -ld /opt/software
只有文件的 owner 和 root 才有权更改属主

-----------------------------------可执行脚本--------------------------------

脚本 Script ,一种解释执行的程序
Linux 下常见的三种脚本程序
    - Shell 脚本  *.sh
    - Perl 脚本  *.pl
    - Python 脚本 *.py
脚本程序,本质是一个文本文件
    1 它是一个文本文件
    2 它具有可执行权限

脚本程序都是由解释器来执行的
    Shell脚本解释器:  /bin/sh
    Perl脚本解释器:    /bin/perl
    Python脚本解释器:/bin/python3
执行一个脚本时,以下两种方式等效
    ./hello.py
    /bin/python3  hello.py

--------------Shell脚本

    Shell脚本,按Shell的语法写出来的脚本
    是 Linux 自带的脚本语言
    相当于Windows下的 DOS 批处理脚本
1 编辑一个文本文件,保存为 hello.sh
    #!/bin/sh
    echo "hello,world"
2 添加可执行权限
    chmod +x  hello.sh
3 执行程序
    ./hello.sh
    /bin/sh hello.sh
注意:
    1 第一行必须声明解释器
        #!/bin/sh
    2 必须有 x 权限,才能够执行
        比如,一个程序只有作者执行,别人不能执行
        rwxr--r--
    3 执行程序时,必须加上路径
        ./hello.sh
        /home/shaofa/hello.sh

--------------Python脚本

    Python脚本,比Shell要强大一些,对于 C / Java 工程师,  
    1 编辑一个文本文件,
            #!/bin/python3
            print("hello,word")
            保存为   hello.py
    2 添加可执行权限   chmod +x  hello.py
    3 执行程序    ./hello.py    

--------------------------------- 环境变量 ----------------------------------

环境变量,就是存在当前环境中的变量
定义环境变量    export OUTDIR=/opt/
显示环境变量    echo ${OUTDIR}
查看所有环境变量    printenv

环境变量的使用:
    可以在当前终端中使用
    可以在 SHELL 脚本中调用

在命令行中定义的环境变量,只对当前SHELL终端有效
当关闭终端后,重启后就消失了

--------------------------------用户环境变量----------------------

用户环境变量:定义在 ~/.profile 中
在主目录下查看隐藏文件    ls -la
其中,a 表示 all ,显示所有文件
注:在Linux下,以 . 开头的文件为 隐藏文件
1 用文本编辑器打开 ~/. profile
    gedit ~/.profile
2 添加
    export JAVA_HOME=/opt/jdk1.8
    保存并关闭
3 注销,重新登录后生效
    echo $JAVA_HOME
原理:当用户打开终端时,会自动运行 .profile ,将变量注入到当前环境中。
注意:
        1 以点号 . 开头的文件为隐藏文件
            ls -a 查看所有文件
        2 此配置只对当前用户有效
                因为每个用户都有自己的配置文件 .profile
        3 有的Linux系统上,使用 .bash_profile


---------------------系统环境变量----------------

系统环境变量:定义在 /etc/profile 中
此中的环境变量对 所有用户 有效
以 root 身份执行
gedit  /etc/profile
但是,一般不直接修改 /etc/profile
而是在 /etc/profile.d/ 创建一个自定义的脚本
1 用 gedit 创建一个脚本
    gedit /etc/profile.d/myprofile.sh
2 定义环境变量
    export TOMCAT=/opt/tomcat
3 注销并重新登录
    重新登录后,环境变量生效

--------------------------------PATH 环境变量----------------------------------


PATH,最常见的一个环境变量
用于描述可执行程序的搜索路径
查看path中的配置目录    echo $PATH
多个路径之间以冒号分隔
usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin

默认地,系统从以下目录中搜索可执行程序
/usr/bin  比如,/usr/bin/tar
/usr/sbin  比如,/usr/sbin/useradd
/usr/local/bin
/usr/local/sbin
其中, sbin 为超级用户 root 才能执行的程序
/usr/ 下系统自带的程序, /usr/local/ 是用户安装的程序

演示:修改PATH环境变量。。。
    1 编辑 /etc/profile.d/myprofile.sh
        设定 PATH 环境变量
         export PATH=$PATH:/opt/tomcat/bin
     2 注销,重新登录后生效

-------------------------手动配置网络----------------------------------

在终端里,以命令行方式来配置网络
常用命令: ifconfig  ,  netstat 等
默认地,Ubuntu 下面不带 ifconfig 命令
需要使用 apt 软件包管理器
apt install net-tools 安装一个软件包
apt remove net-tools 移除一个软件包
apt search xxx  搜索
apt list | grep xxx 列表
如果出现:
    E: 无法定位软件包问题”
    解决:输入    sudo apt-get update    更新一些软件源。

1 查看网络配置
    ifconfig
其中,if 表示 interface 网络接口
会列出所有的网络接口,及各个接口的状态
2 开启/禁用网络
    sudo ifconfig xxx up
    sudo ifconfig xxx down

--------------------------------- 文本编辑 vi ----------------------------------

vi / vim , 一个基于控制台的文本编辑器
gedit , 一个基于GUI的文本编辑器
其中,vim 是 vi 的升级版,  演示使用 vim 命令

1 打开文本编辑
    vim abc.txt
如果目标文件存在,则打开编辑;如果不存在,会新建一个文件
如果系统上没有 vim ,就安装一下:
    sudo apt install vim

2 切换模式
    编辑模式 Insert Mode:  按 i 键
    命令模式 Command Mode:  按 ESC 键

3 退出编辑
    1、按 ESC 键,进入命令模式
    2、输入  :wq  保存并退出
    3、输入  :q  退出
    4、输入  :q!  强制退出 ( 放弃保存 )

Linux文本文件的编辑
1  桌面环境:gedit
2  终端环境:
     - 少量修改 : vim
     - 大量修改 : 在 Windows上编辑,然后上传到Linux

------------------------------------文本文件的上传-----------------------------------

推荐:在 Windows上编辑,然后上传到 Linux
使用 notepad ++ 或者其他的专业编辑器
文本文件的换行符
    Windows : \r\n
    Linux : \n
    可以在 Notepad ++ 里观察到此区别
        视图 | 显示符号 | 显示行尾符
换行符的转换:
        编辑 | 文档格式转换 | 转换为 UNIX格式
注意:只有在编辑 SHELL 脚本时,才需要转换
           其他格式的文件一般都不需要转换,如*.xml, *.java
在 Ubuntu上面运行:
        dos2unix xxx.sh
        也可以将 xxx.sh转成 UNIX的换行风格( \n )
        如果系统里没有这个命令,可以安装一下:
        sudo apt install dos2unix

Shell脚本的编辑 。。
    1 用 Notepad++打开编辑 mytest.sh
    2 转成 Unix格式 \n
    3 上传至Linux
    4 chmod  +x mytest.sh
    5 运行 ./mytest.sh

---------------------------------- 程序与进程 ----------------------------

程序 Program:指一个程序文件,如 notepad.exe
    进程 Process:当一个程序运行起来,在操作系统内创建一条记录,
    用于描述和控制它的运行
    比如,打开多个 notepad.exe ,则得到多个进程
查看进程命令:
    ps -ef
    其中,各个字段的含义:
    UID : 执行者
    PID :  进程ID
    PPID :  父进程ID
    STIME :  启动时间
    CMD :  启动时调用的命令行

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容