zoukankan      html  css  js  c++  java
  • C语言基础 (2) linux命令

    01.课程回顾

    链接

    ln 1.txt aaa.txt  硬链接

    (两个相互独立 删除一个另外一个还在)

    ln -s 1.txt aaa.txt软连接 (后面的是快捷方式)

    硬链接只能是文件,软连接可以是文件夹

    grep aaa 1.txt

    tar -cvzf xxx.tar.gz *

    tar -xvzf xxx.tar.gz

    tar -cvjf xxx.tar.bz2 *

    tar -xvjf xxx.tar.bz2 -C ./

    为了兼容windows的zip:

    zip -r aaa *

    unzip -d ./ aaa.zip

    *硬链接与软链接的区别

    在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号inode 。软连接,其实就是新建立一个文件,这个文件就是专门用来指向别的文件的(那就和windows 下的快捷方式的那个文件有很接近的意味)。软链接产生的是一个新的文件,但这个文件的作用就是专门指向某个文件的,删了这个软连接文件,那就等于不需要这个连接,和原来的存在的实体原文件没有任何关系,但删除原来的文件,则相应的软连接不可用(cat那个软链接文件,则提示“没有该文件或目录“)

    硬连接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的。相反都是软连接会重新建立一个inode,当然inode的结构跟其他的不一样,他只是一个指明源文件的字符串信息。一旦删除源文件,那么软连接将变得毫无意义。而硬链接删除的时候,系统调用会检查inode link count的数值,如果他大于等于1,那么inode不会被回收。因此文件的内容不会被删除。

    硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。可以通过ls -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件;而软链接建立的是一个指向,即链接文件内的内容是指向原文件的指针,它们是两个文件。

     

    软链接可以跨文件系统,硬链接不可以;软链接可以对一个不存在的文件名(filename)进行链接(当然此时如果你vi这个软链接文件,linux会自动新建一个文件名为filename的文件),硬链接不可以(其文件必须存在,inode必须存在);软链接可以对目录进行连接,硬链接不可以。两种链接都可以通过命令 ln 来创建。ln 默认创建的是硬链接。使用 -s 开关可以创建软链接

     

    02常用命令 whoami、exit、su

    查看当前谁在用:whoami

    查看登陆记录:who

    查看登陆记录:w: w显示的信息更详细一点

    退出登录:exit

    sudo命令的作用:

     

    切换用户 sudo su root

    sudo su

    sudo su -  

    加 – 就会去到你用户所在目录

    03 groupadd、groupdel、usermod(了解)

    创建一个用户(系统默认创建一个用户组,这个用户组的名字和用户的名字是一样的)

    查看用户组信息: cat /etc/group,看用户组名,用户组id  就好比QQ群

    groupadd abc

    sudo groupadd abc

    sudo groupdel abc

    修改用户所在组:usermod

    查看用户信息: cat /etc/passwd  (←这个不是查看密码 是查看用户信息)

    问题来了…1000这个号是哪个组呢?

    04 删除用户组补充

    组里没有人才能删,所以如果想删除应该先把用户换个组

    05 useradd、passwd、userdel_rec

    添加用户:

    useradd -d(指定主目录) /home/abc  abc -m(如果abc不存在自动创建) 

    useradd -d(指定主目录) /home/abc  abc -m -g mike

    sudo userdel hello (目录没有删除掉)

    sudo userdel abc -r (连同目录一起删除)

    sudo password abc

    06 chmod(非常重要)

     

    sudo last

    有两种方式:一种是好理解,但是麻烦

              一种是不好理解,但是简单

    一、字母法:

    ll 先查看一下:

    chmod g+x 1.c

    chmod g-x 1.c (在group组里面减去x(可执行))

    第二种方式:

    chmod o=rwx 1.c

    二、数字法:

    rwx

    ---

    000 0代表没有任何权限

    r—

    100 4 代表有读权限

    -w-

    010 2 代表有写权限

    --w

    001 1 代表有执行权限

    rw-

    110 6 代表有读写权限

    这种方法…

    600 分别代表 用户 用户组 和 其他

    6代表4+2

    chmod 600 1.c

    chmod 124 1.c第一个只有可执行 第二只有写 第三个只有读

    ******

    chmod 777 1.c 

    ******

    文件夹权限说明:

    chmod u-x ./abc

    x:没有此权限,不允许用户进入

    r:没有这个权限,无法查看文件夹的内容

    w:没有这个权限,无法新建(就算 vi 1.c了也没法往里写东西)或删除文件

     

    07_常用命令:chown、chgrp

    sudo chown aaa 1.c (change own 改变文件所有者)

    sudo chgrp root 1.c

    08_常用命令:ps、top、kill_rec

    查看日期

    cal      (calender)

    cal -y

    date

    ps

    ps -aux

    显示其他用户启动的进程(a)

    查看系统中属于自己的进程(x)

    启动这个进程的用户和它启动的时间(u)

     

     

     

    -9 强力杀进程

    top命令

    区别于 ps -aux动态的显示

    9.复习上面的内容..

    10_常用命令:&、jobs、fg

    举例:

    直接运行hello是在前台运行

    ./hello & 加上这个取地址号以后就在后台运行着了

    PID:4318在后台运行着

    怎么让一个在运行着的程序切换到后台?

    Ctrl + Z

    jobs查看后台运行的进程

    fg 3 把第三个调用到前台

    fg 2

    11_常用命令:字符图形切换、df、du

    reboot   立即重启

    shutdown -r now  给用户提示,重启

    检测目录所占磁盘空间:du

    du是查看某个目录的大小

    df是检测磁盘的空间

    如果是在ubuntu平台,软件的安装而可以通过互联网在线安装,更加方便快捷:

    sudo apt-get update

    sudo apt-get install xxx

    sudo apt-get remove xxx

    12_常用命令:ifconfig、ping

    ifconfig 相当于Windows下的ipconfig

    ping

    13_课堂答疑:ping作用

    ping代表我去你的路上是通的 但是你去我的路上不一定是通的

    14_vi最基本的操作

    1. gedit是一个Linux环境下的文本编辑器,类似windows下的写字板程序。
    2. vim 是 vi的升级版本 敲vi和vim都一样的 都是调用的vim

    退出保存的方式, 按一下ESC 然后两个大写的Z (可以按两次shift+z)

    15_vi的插入模式和退出

    :q! 代表退出不保存

    :wq 保存退出

    vi hello.c +5 打开并且在第五行

    几个命令:

    a  光标插入

    I  在当前位置插入

    o  光标位置下方开启新行

    O 光标位置上方开启新行

    I 光标所在行首插入文字

    A 光标所在行尾插入文字

    :wq 保存退出

    :w 保存退出

    :w 另存为

    16_vi的配置 (这个可能需要重新看一下)

    F9: 侧栏

    p< 头文件

    im 生成一个main函数

    ip 生成一个printf

    ctrl+n 显示历史写的代码

    1、 安装vim

    sudo apt-get install vim

    2、 安装ctags

    sudo apt-get install ctags

    3、 配置vim

    1)     把文件夹<vim_configure>拷贝到虚拟机任意目录

    2)     进入此文件夹,sudo运行copu_con.sh脚本

      cd vim_configure

      ./copy_con.sh

    拷贝成功后,出现copy successful

    (如提示没有权限:请使用:chmod u+x copu+con.sh增加执行权限

    17_vi其它常用命令

     

    set指令 设置行号:

    18_windows和linux相互远程操作

     

    19_linux相互远程操作

    windows远程登陆linux需要借助软件 xshell

    1)     远程登录前 需要测试一下网络是否ping通

    2)     使用软件连接

    linux互相连

    ssh -l username hostip

    20_web服务器的搭建

    20_web服务器的搭建

    21_网页版helloworld 

    后缀名一定是.cgi

     

  • 相关阅读:
    07-图4 哈利·波特的考试 (25分)
    Windows环境下清除SVN文件
    查看SQL SERVER 2008R2 表大小
    Oauth支持的5类 grant_type 及说明
    SignalR的性能监测
    Loadrunner11安装
    Azure ServiceBus 通信失败问题
    sql server text类型 存储问题
    System.BadImageFormatException
    InputStream只能读取一次的解决办法 C# byte[] 和Stream转换
  • 原文地址:https://www.cnblogs.com/eret9616/p/9709926.html
Copyright © 2011-2022 走看看