2019-04-17 16:48:56 guyuealian 阅读数 234

Linux Ubuntu使用技巧

目录

目录

Linux Ubuntu使用技巧

--Linux基础命令

--Ubuntu常用命令

(1)kill杀死无响应的进程 

(2)统计文件和文件夹个数

--tmux常用命令

--Linux 设置可执行文件、头文件和链接库的路径

设置在PATH中找到可执行文件程序的路径。

gcc找到头文件的路径

g++找到头文件的路径

设置动态链接库的路径

设置静态库的路径

快速生效的方法

修改profile文件:  

修改.bashrc文件(推荐):  

bashrc与profile的区别

/etc/profile,/etc/bashrc 和~/.profile,~/.bashrc的区别

--安装 pip 并换镜像源

--限制线程数代码

--释放Ubuntu磁盘空间:



 

--Linux基础命令

# 使用 sudo nautilus 进入ubuntu 文件管理器。可以随意复制,删除,粘贴,无权限限制
sudo nautilus 
# 列出to目录下,所有后缀名为jpg的文件
ls path/to/*.jpg 
# 复制文件file.txt,并重命名为file1.txt
cp src/dir/file.txt dest/dir/file1.txt 
# 复制文件file.txt到dest/dir
cp -r src/dir/file.txt dest/dir
# 复制文件夹
cp -r src/dir dest/dir
创建文件: touch a.txt
创建文件夹: mkdir NewFolder
删除文件: rm a.txt
删除文件夹: rmdir NewFolder
删除带有文件的文件夹: rm -r NewFolder
 拷贝当前目录所有文件:cp -r ./*.*  ./codes/

--Ubuntu常用命令

(1)kill杀死无响应的进程 

gnome-system-monitor

(2)统计文件和文件夹个数

统计当前文件夹下文件的个数,包括子文件夹里的

ls -lR|grep "^-"|wc -l

统计文件夹下目录的个数,包括子文件夹里的

ls -lR|grep "^d"|wc -l

统计当前文件夹下文件的个数

ls -l |grep "^-"|wc -l

统计当前文件夹下目录的个数

ls -l |grep "^d"|wc -l

附:

统计输出信息的行数

wc -l

将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

grep "^-"


--tmux常用命令


# 查看所有session列表
tmux ls
tmux new -s abc # 新建一命名为 abc 的会话
# 恢复回话时:
# tmux ls 命令时所列出的每一行的最前面的那个编号
tmux attach -t 编号
# 也可简写成
tmux a -t 编号
# 连接上 abc 会话
tmux attach -t abc
# 或者
tmux a -t abc

# 终止会话
# 杀死整个 cba 会话
tmux kill-session -t cba
  

 快捷键:

Ctrl+B,D # 退出当前回话session,但不会kill掉该session

Ctrl+B,S # 进入tmux会话session后,使用该命令切换session

滚屏: ctrl +b + [   ,用q 退出滚屏

 


--Linux 设置可执行文件、头文件和链接库的路径

所有用户有效配置文件:/etc/profile

当前用户有效配置文件::~/.bashrc或~/.bash_profile

设置在PATH中找到可执行文件程序的路径。

export PATH=$PATH:/opt/rh/devtoolset-3/root/usr/bin/

export PATH=$OPENSSL:$PATH:$HOME/bin

export PATH=$PATH:/usr/local/curl/bin

PS:多个路径用:隔开

gcc找到头文件的路径

C_INCLUDE_PATH=/usr/local/mysql/include:/usr/local/include:/usr/local/curl/include
export C_INCLUDE_PATH

g++找到头文件的路径

C_INCLUDE_PATH=/usr/local/mysql/include:/usr/local/include:/usr/local/curl/include
export C_INCLUDE_PATH

设置动态链接库的路径

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/curl/lib:/usr/local/lib:/usr/lib64

设置静态库的路径

export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/curl/lib:/usr/local/lib:/usr/lib64

快速生效的方法

source /etc/profile

sudo ldconfig

修改profile文件:  

vi /etc/profile  
#在里面加入:  
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"  
#让环境变量立即生效需要执行如下命令:  
source /etc/profile  

修改.bashrc文件(推荐):  

gedit ~/.bashrc
# 在里面加入 
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"  

# 使用sudo ldconfig生效
sudo ldconfig

# 另开终端,可以通过echo命令测试一下:  
echo $PATH  

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export PATH=/home/ubuntu/anaconda3/bin:$PATH
export PYTHONPATH="/home/ubuntu/caffe/python:$PYTHONPATH"
export PATH=/home/ubuntu/extern/protoc-3.0.0-linux-x86_64/bin:$PATH

bashrc与profile的区别

     要搞清bashrc与profile的区别,首先要弄明白什么是交互式shell和非交互式shell,什么是login shell 和non-login shell。

     交互式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,shell也终止了。 shell也可以运行在另外一种模式:非交互式模式。在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。

     bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshell,而profile用于交互式login shell。系统中存在许多bashrc和profile文件,下面逐一介绍:

     /etc/pro此文件为系统的每个用户设置环境信息,当第一个用户登录时,该文件被执行。并从/etc/profile.d目录的配置文件中搜集shell的设置.

     /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。有些linux版本中的/etc目录下已经没有了bashrc文件。

     ~/. pro每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,它设置一些环境变量,然后执行用户的.bashrc文件.

     ~/.bashrc:该文件包含专用于某个用户的bash shell的bash信息,当该用户登录时以及每次打开新的shell时,该文件被读取.

     另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.

/etc/profile,/etc/bashrc 和~/.profile,~/.bashrc的区别

/etc/profile,/etc/bashrc 是系统全局环境变量设定
~/.profile,~/.bashrc用户家目录下的私有环境变量设定

     当登入系统时候获得一个shell进程时,其读取环境设定档有三步

 

  • 首先读入的是全局环境变量设定档/etc/profile,然后根据其内容读取额外的设定的文档,如:/etc/profile.d和/etc/inputrc
  • 然后根据不同使用者帐号,去其家目录读取~/.bash_profile,如果这读取不了就读取~/.bash_login,这个也读取不了才会读取~/.profile,这三个文档设定基本上是一样的,读取有优先关系
  • 然后在根据用户帐号读取~/.bashrc

~/.profile与~/.bashrc的不区别:

~/.profile可以设定本用户专有的路径,环境变量,等,它只能登入的时候执行一次
~/.bashrc也是某用户专有设定文档,可以设定路径,命令别名,每次shell script的执行都会使用它一次


--安装 pip 并换镜像源

sudo apt-get install python-pip
sudo gedit /etc/pip.conf

在打开的文本文件中输入以下内容并保存。

--限制线程数代码

OMP_NUM_THREADS=1 MKL_NUM_THREADS=1  python XXX

在服务器上多卡上跑实验,如果不对每个进程的线程数量进行限制,每个进程会默认开启系统核心的一半的线程数,多卡同时跑实验会同时开启大量线程,线程会一直在排队,耗费大量时间在I/O上,运行变慢

--释放Ubuntu磁盘空间:

https://jingyan.baidu.com/article/2a138328f1e8ae074a134ff8.html

2014-07-28 11:31:12 WuyZhen_CSDN 阅读数 17164

因为酷狗音乐linux版本还未出现,现在主要使用的是web版,具体安装如下:

先安装预装软件:命令sudo apt-get install python-gtk2 python-webkit

再下载软件包deb,地址http://forum.ubuntu.org.cn/viewtopic.php?f=73&t=382232&p=2803790#p2803790

安装后即可


2016-10-09 16:04:41 dodod2012 阅读数 2439

原文地址:http://www.xitongbuluo.com/jiaocheng/16766.html

linux Ubuntu是一个以桌面为主的操作系统,很多用户会在 Ubuntu下使用eclipse(集成开发环境),在使用前提下要先去下载eclipse 工具,可是在安装之后发现菜单栏消失不见了,试过各种方法都无法找回Eclipse菜单栏,这让很多用户很是无奈。

linux Ubuntu使用Eclipse菜单栏不见了解决方法:

1. 新建一个eclipse.sh文件,加入如下内容,下面的路径是ecipse的路径

#!/bin/bash

export UBUNTU_MENUPROXY=0

/usr/bin/eclipse

2. 在终端 sh ./eclipse.sh


2016-04-19 20:37:09 haimianxiaodao 阅读数 2667

内核版本3.13.8;

实验平台:虚拟机 unbuntu14.04

1、编辑文件“mymod.c”

#include <linux/module.h>

#include <linux/timer.h>

#include <linux/errno.h>

 static int sec =5;

module_param (sec,int, S_IRUGO|S_IWUSR );

MODULE_PARM_DESC(SEC,"Set the intervel.");

 static void mymod_timer(unsigned long data);

static DEFINE_TIMER(timer,mymod_timer,0,0);

 static void mymod_timer(unsigned long data)

{

        printk (KERN_INFO"mymod: timer\n");

       mod_timer(&timer,jiffies + sec *HZ);

}

 static int mymod_init(void)

{

        printk (KERN_INFO"mymod: init\n");

         if(sec<=0)

        {

                printk (KERN_INFO"Invalid intercal sec=%d\n",sec);

                return -EINVAL;

        }

       mod_timer(&timer,jiffies+sec*HZ);

        return 0;

}

 

static void mymod_exit(void)

{

        del_timer(&timer);

        printk(KERN_INFO"mymod: exit\n");

}

module_init(mymod_init);

module_exit(mymod_exit);

 MODULE_AUTHOR("Juanjuan");

2 编辑Makefile文件:

           obj-m := mymod.o

 CURRENT_PATH := $(shell pwd)

VERSION_NUM :=$(shell uname -r)

LINUX_PATH :=/usr/src/linux-3.13.8

 all :

        make -C $(LINUX_PATH)M=$(CURRENT_PATH) modules

clean :

        make -C $(LINUX_PATH)M=$(CURRENT_PATH) clean 

注意格式,截图说明,两个红色make之前一定要是tab键打的空格。


3、执行make命令,生成模块mymod.ko

 

4、通过modinfo命令,可以看到mymod.ko的信息,在这里可以看到使用MODULE_*宏所指定的内容。


5、添加内核模块

         #insmod mymod.ko

         使用dmesg命令,可以看到mymod.ko的输出内容

         #dmesg | tail


使用lsmod可以显示目前调价到内核中的模块列表


要将已经添加的模块从内核空间删除时,可以使用rmmod命令

#rmmod mymod

执行rmmod命令后,内核将从内核空间内删除,使用lsmod命令就不会再输出mymod行,此外,使用dmesg命令还可以看到终止模块的处理中printk()输出的信息mymod:exit。

6 模块参数介绍


三个操作分别是查看生成的对应的目录和文件、确认在parameters下生成的模块mymod中所定义的参数sec、其内容的初始值是5。另外,参数5可以在使用insmod添加模块时对其值进行指定,命令 # insmodmymod.ko sec=10,这样,默认间隔5秒变为间隔10秒。

小白前几天第一次写博客,图片竟然没有插进去,晕死,现在刚刚补上,很多不足的地方,大家多多指教啊,也欢迎大家加群478938039一起讨论研究,网上资源很多,良莠不齐,适合自己的才是最好的。


小白前几天第一次写博客,图片竟然没有插进去,晕死,现在刚刚补上,很多不足的地方,大家多多指教啊,也欢迎大家加群478938039一起讨论研究,网上资源很多,良莠不齐,适合自己的才是最好的。
2016-12-09 10:25:19 James_shu 阅读数 357

Linux Ubuntu是Linux发行版本中图形化界面做的比较OK的一款,就其的常见使用记录如下
一、Ubuntu 默认有6个命令交互通道和一个图形界面交互通道,默认进入到的是图形界面通道
命令交互模式切换:ctrl+alt+f1—f6
图形交互界面 ctrl+alt+f7
二、关于命令交互模式
fuyunwang@ubuntu:~$
- fuyunwang:用户名
- ubuntu :主机名(hostname指令可以查看)
- ~ :路径 ,假如当前的路径正好是 该用户存放数据的根目录 ,则显示~
- $ :用户的类型 $代表普通用户 # 代表 超级用户

三、Linux的目录:
pwd查看当前的目录
cd / 可以切换到系统的根目录下,ls查看当前目录下的所有的文件
bin:存放可执行的二进制文件的目录(cd ls pwd)
boot:存放系统的引导文件的目录
dev:存放设备文件的目录,linux把设备当做文件处理
etc:存放系统的配置文件的目录
home:存放除了root用户之外的其他所有用户的存放文件的根目录
lib:共享库
usr:存放应用的安装路径的文件
opt:该文件用于自定义应用程序的安装位置
mnt:临时文件系统的挂靠点(比如手机的sd卡是一个文件系统,当手机安装了sd卡的时候就会挂靠到mnt目录下)
四、文件系统的权限分析:
查看当前目录下所有文件的权限: ls -l
- 目录结构
- 文件权限分析
w :可写 r: 只读 x:可执行 - :无权限
文件权限
1. 字符表示法
drwxr-xr-x
第一个字符 :文件的类型 d :普通文件 - :文件夹 c :串口文件 l :连接文件
2-4 字符 : 该文件的属主用户的权限
5-7 字符 : 与属主用户同一组的其他用户的权限
8-10 字符 : 不同组的其他用户的权限
2. 数字表示法
-rw-r–r– :文件的默认权限 644
drwxr-xr-x : 目录的默认权限 755
五、sudo表示以超级用户的身份来操作,所以在进行某些操作的时候需要首先以超级管理员的身份来为每一个用户授权,授权的操作也是通过sudo命令修改/etc/sudoers文件来修改,这里比较繁琐之后会详细介绍
六、文件操作命令:

1. ls   : 查看目录内容
        - l :查看详细信息
    - a :查看所有文件(隐藏)
        man :manual : 手工,帮助 ,帮助命令,好比windows help 
     命令: man ls
     2. mkdir :创建目录 
          Desktop:
        - java
          - JEE : aa.txt  bb.txt  
          - Android
     3. cd  切换目录
        - cd ..  记得要加空格
    - cd ./java  进入当前目录的子目录
    - cd ../xxx  进入上一级目录的子目录
       tab :自动补全
     4. touch  :创建一个空白的普通文件
        touch aa.txt 
     5. echo  :把内容重定向到指定的文件中 ,有则打开,无则创建
     6. cat、more  :查看文件内容
        - cat :查看文件内容
    - more :分页查看文件内容,按空格键换页

     7. cp、mv、rm   
        - cp :复制
       cp bj.txt ./java/jee
    - mv :剪切、重命名
       1. 剪切 :mv aa.txt ../android/
       2. 重命名 :假如剪切的文件 存放在同一个目录中 ,则是重命名
           mv bb.txt cc.txt

    - rm :删除文件或者文件夹
      -f : 假如要删除的文件不存在,也不提示
      -i : 删除前提示 ,默认不删除,要删除,输入y
      -d : 删除空白目录 
      -r :递归删除
     8. wc :word count :统计字符数
         154  233 3418 
     - 154 :行数
     - 233 :单词数
     - 3418 :字符数
       命令: wc bj.txt

     9. ln :创建连接文件
        - 默认创建的是硬连接,好比复制 ,但是两个文件会同步 
       命令:ln ./java/android/aa.txt  aaa
    - s :创建的是软连接

     10. pwd   :查看当前目录的绝对路径 

     11. 管道命令 |
       命令: ls -la | wc 
     12. 重定向
        - > :覆盖模式
    命令:  echo "ww">aaa
    - >>:追加模式
    命令: echo "ww">>aaa
     13. passwd   :设置密码  ,ubuntu默认 root账号是没有开启 ,只要设置root密码即可开启
         sudo passwd root

     14. su  切换目录
         su root 
     root用户切换到其他账号不需要密码

七、系统操作命令:

1.stat   :查看文件的详细信息
       stat bj.txt
     2.who与whoami
       who : 查看在线的用户
       whoami :查看当前自己的用户
     3.hostname : 显示主机名
       hostname
     4.uname  :显示系统信息
        -a :显示完整的系统信息

     5.top :显示当前耗时的进行的信息 ,每3秒刷新一次 
         cltr+c 中断 
     6.ps :显示当前进程的快照 
       - axu
     7.du :显示文件的大小信息 
     8.df :磁盘使用情况  disk free
     9.ifconfig :查看或者配置网卡信息 ,好比windows 的ipconfig
    设置虚拟机ip地址:
      1. 设置vmware的连接方式
         - 共享宿主机的ip地址,在网上邻居找不到
         - 桥接方式,需要单独设置ip,可以在网上邻居查找
      2. 图形界面设置ip地址 
          edit connection --》ipv4--》manual(手工设置)--》add  (ip地址,子网掩码)
          3.命令方式设置ip地址
         静态设置ip:
         sudo ifconfig eth0 192.168.15.122 netmask 255.255.255.0
     10.ping  测试与目标主机连接情况
     11.clear  : 清除屏幕  windows: cls  
     12.man  :帮助命令
         man 命令
     13.kill  :杀死进程
        kill  pid 
     14.netstat  :网络连接详细信息

     15. useradd 
        - 查看用户信息
     sudo cat /etc/passwd
     fuyunwang:x:1000:1000:UbuntuA,,,:/home/fuyunwang:/bin/bash
      - fuyunwang:用户名
      - x :密码 :已经加密 ,密码存放在  /etc/shadow 
      - 1000: 账号id ,userId
      - 1000: 组id ,group id
          - UbuntuA,,,  :账号描述
          - /home/fuyunwang :该账号存放文件的默认位置  ~
      - /bin/bash:该用户的shell脚本的解析方式  ,sh 、bash、rbash

        - 创建用户 
      sudo useradd shuwang -d  /home/shuwang   -s /bin/bash 
       -d :指定该用户的home 路径 
       - s :该用户的shell解析方式
      步骤:
        1. 创建 /home/lijun 目录
        2. 执行 useradd 命令
        3. 用 passwd 设置密码
        4. su 切换用户

LinuxUbuntu下如何安装.SH文件

博文 来自: zhangjie_xiaoke
没有更多推荐了,返回首页