zoukankan      html  css  js  c++  java
  • linux命令

    1.关机命令:sudo shutdown -h now

    2.查看版本:cat /proc/version

      查看硬件芯片(主板):cat /proc/cpuinfo          //BCM2708

    3.设置root密码:

       sudo passwd root  然后输入两次想设置的密码即可。

    4.用户切换:

      其它用户 => root用户:su  或 sudo su

      root用户 => 其他用户:su pi 或 exit   #pi是一个用户名。

    5.用户归属于用户组 //详见《鸟哥的linux私房菜》第六、十四章

      树莓派在操作串口ttyAMA0时提示没有权限,Cannot open /dev/ttyAMA0: Permission denied,

      于是查看ttyAMA0隶属的组:ls -l /dev/ttyAMA0  //发现隶属于tty组

                                     输出:crw-rw---- 1 root tty 204, 64 Jul  1 17:58 /dev/ttyAMA0

      查看用户(如pi)隶属的组别:groups pi   //查看pi用户所在的组,以及组内成员发现没有tty组。

     (注:通过文件/etc/group可以查看所有组及pi隶属的组,命令:sudu nano /etc/group)

                                    输出:pi : pi adm dialout cdrom sudo audio 所在组|组内成员 video plugdev games users netdev input spi gpio

      用户pi没有隶属于tty组别,所以不能操作ttyAMA0串口,应将pi用户加入tty组:sudo gpasswd --add pi tty

                                        然后groups pi   //可以看到多了tty

                                        输出:pi : pi adm tty dialout cdrom sudo audio 所在组|组内成员 video plugdev games users netdev input spi gpio

      logout退出系统(注销),login登陆。

    小结:查看串口驱动:cat /proc/tty/drivers/serial
         查看串口设备:dmesg | grep ttyS*
         groups pi 查看pi用户所在的组,以及组内成员
    whoami 查看当前登录用户名
    /etc/group文件包含所有组及当前用户隶属于哪些组
    /etc/shadow和/etc/passwd系统存在的所有用户名
    解说:/etc/group文件是用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以归属一个或多个不同的用户组;同一用户组的用户之间具有相似的特征。比如我们把某一用户加入到root用户组,那么这个用户就可以浏览root用户家目录的文件,如果root用户把某个文件的读写执行权限开放,root用户组的所有用户都可以修改此文件,如果是可执行的文件(比如脚本),root用户组的用户也是可以执行的;用户组的特性在系统管理中为系统管理员提供了极大的方便,但安全性也是值得关注的,如某个用户下有对系统管理有最重要的内容,最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为完全私有;另外root用户组一般不要轻易把普通用户加入进去。

    Linux下每个文件都有用户和群组权限。你可以在终端运行ls -l 命令来查看完整的权限和属性。

    例:pi@raspberrypi:~/raspi_project$ ls -al raspi_ks103.py
                         输出:-rwxrwxrwx 1 pi pi 983 Jul 18 21:09 raspi_ks103.py

    6. 改变/usr/local目录的权限:(-R是对所有子目录都有效)

        chomd 777 -R /usr/local

    7. 文件节点号查询:

        ln -i

    8. 查看linux操作历史记录

        查看用户的登录记录:last   

        shell$ history或vi ~/.bash_history          //(以.号开头的文件是隐藏文件) 

        常用日志文件如下:

        access-log   纪录HTTP/web的传输 
        acct/pacct   纪录用户命令 
        aculog     纪录MODEM的活动 
        btmp      纪录失败的纪录 
        lastlog     纪录最近几次成功登录的事件和最后一次不成功的登录 
        messages    从syslog中记录信息(有的链接到syslog文件) 
        sudolog     纪录使用sudo发出的命令 
        sulog      纪录使用su命令的使用 
        syslog     从syslog中记录信息(通常链接到messages文件) 
        utmp      纪录当前登录的每个用户 
        wtmp      一个用户每次登录进入和退出时间的永久纪录 
        xferlog     纪录FTP会话
     
        但是~/.bash_history里面是没有时间的记录的,可以用下面的脚本来记录时间.........

    9.使用find命令在系统中搜索文件,使用grep在文件中搜索字符串。 

       grep查找命令:grep EXIT_*.h

       find命令:find /目录 -name 'ab*.*'

    10.获取帮助信息

          man gcc

      man ls

      info gcc

      info ls 

    11.进入家目录:

       cd ~

       进入其它家目录:

       cd ~家用户名

    12. /proc文件系统:应用程序通过读写proc文件系统获得设备驱动信息或者设置设备驱动参数。

       cat /proc/cpuinfo

       cat /proc/meminfo

       cat /proc/version

       cat /proc/net/sockstat

       cat /proc/sys/fs/file-max =>76593

       echo 80000 >/proc/sys/fs/file-max

       cat /proc/sys/fs/file-max =>80000

    13.当前运行进程列表:

        每个进程都有唯一的标识符:1-32000之间的数字。ps命令给出当前正在运行进程的列表:ps -a

    16.Linux系统

      配置文件:/etc

      设备文件:/dev

                   /dev/console:系统控制台设备

                   /dev/tty:控制终端

                   /dev/null:空设备

    17.如果想知道标准输出是否被重定向了,只需检查底层文件描述符是否关联到一个终端即可。系统调用isatty就是用来完成这一任务的。只要将文件描述符传递给他,他就可判断出该描述符是否连接到一个终端。

        #include <unistd.h>

        int isatty(int fd);

        如果打开的文件描述符fd连接到一个终端,则系统调用isatty返回1,否则返回0.

    18.linux的source命令:

         source命令用法:
         source FileName
         作用:在当前bash环境下读取并执行FileName中的命令。
         注:该命令通常用命令“.”来替代。
         如:source .bash_rc 与 . .bash_rc 是等效的。
         注意:source命令与shell scripts的区别是,
         source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环境变量(或alias等等)的命令写进scripts中,就只会影响子shell,无法改变当前的BASH,所以通过文件(命令列)设置环境变量时,要用source 命令。

    19.如何清除ubuntu系统中的软件包

         如果你频繁的在你的系统中安装/卸载,那么不时的清理一下你的系统是十分必要的。

         sudo apt-get autoremove

    20.从datached HEAD 状态恢复回来

         git checkout master

  • 相关阅读:
    c++学习--面向对象一实验
    c++学习--面向对象一
    c#学习
    Linux安全之SSH 密钥创建及密钥登录,禁止密码登陆
    laravel 5.5 跨域问题 并且laravel的跨域 Access-Control-Allow-Origin 报错的坑
    安装 lnmp
    微信小程序-聊天功能下拉加载更多数据(历史聊天内容出现在顶部)
    简单实现小程序view拖拽功能
    mysql 常用命令
    有感而发——写给曼曼的信
  • 原文地址:https://www.cnblogs.com/cj2014/p/3808511.html
Copyright © 2011-2022 走看看