Ubuntu使用技巧

俗话说,工欲善其事必先利其器.使用Ubuntu这么多年,有一些基本命令的使用总是忘记而反复去查,还有一些比较方便但散乱的使用技巧,可以在日常工作生活中极大的提高我们的效率,现记录如下.

一些好用的命令

命令,ubuntu操作中最快捷的方式.下面是一些好用的命令,记住以后偶尔用到会很方便.

// 在终端中打开当前文件夹
nautilus .

// 对比文件, 需先下载meld
meld   xxx    yyy

// 查看代码差异(gitk,很好用的查看代码差异的图形界面,比git log强多了)
gitk .

// 设置密码(可随意设置,没有长度限制)
sudo passwd 
// 设置root用户
sudo password root

// 处理中文解压乱码问题
unzip -O CP936
// 普通tar解压,  x解压, -f指定档案名称,
tar -xzvf  xxx
// 普通打包 c打包
tar -cvf 文件名 要打包的文件

// 多线程下载,以下载一个win10 iso文件为例:
axel -n 20 http://pic.lpxt.com:789/ISO/cn_windows_10_x64_2020_07.iso

// 创建文件
touch  xxx.txt

//过滤log
adb logcat -v time -b all | grep -E "sss|sdfsd"

ubuntu 各种中文乱码问题

  1. 首先,安装中文支持包language-pack-zh-hans:

$ sudo apt-get install language-pack-zh-hans

  1. 然后,修改/etc/environment(在文件的末尾追加):
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
  1. 如果还不行,就配置locale-gen, 终端执行
    sudo locale-gen zh_CN.UTF-8
    配置完后检查中文显示是否正常,若仍然不正常执行 配置语言环境变量
    复制以下命令,终端执行
export LANG=en_US.UTF-8
export LANGUAGE=
export LC_CTYPE="en_US.UTF-8"
export LC_NUMERIC=zh_CN.UTF-8
export LC_TIME=zh_CN.UTF-8
export LC_COLLATE="en_US.UTF-8"
export LC_MONETARY=zh_CN.UTF-8
export LC_MESSAGES="en_US.UTF-8"
export LC_PAPER=zh_CN.UTF-8
export LC_NAME=zh_CN.UTF-8
export LC_ADDRESS=zh_CN.UTF-8
export LC_TELEPHONE=zh_CN.UTF-8
export LC_MEASUREMENT=zh_CN.UTF-8
export LC_IDENTIFICATION=zh_CN.UTF-8
export LC_ALL=

4 对于中文乱码是空格的情况,安装中文字体解决。

$ sudo apt-get install fonts-droid-fallback ttf-wqy-zenhei ttf-wqy-microhei fonts-arphic-ukai fonts-arphic-uming
  1. 对于解压乱码的,可以在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件
    /etc/environment中加入2行
UNZIP="-O CP936"
ZIPINFO="-O CP936"

studio 加载源码

1. source build/envsetup.sh  //(source可以用 . 代替,即". build/envsetup.sh")
2. lunch   //并选择要编译的项目
3. make idegen -j4 // (这里的 -j4 表示用4线程来编译,可以不加)
4. sudo development/tools/idegen/idegen.sh   //(我的电脑需要管理员权限才能执行成功,所以我一般会在前面加上"sudo")


创建桌面快捷方式

有时候每次点击sh文件启动比较麻烦,此时创建一个桌面快捷方式,每次启动只要双击桌面的启动图标就可以了.下面以studio的启动为例.

用编辑器创建并编辑一个 studio.desktop 文件.

[Desktop Entry]
Name=Studio 
Comment=Android studio 
Exec=/home/lisx/bin/android-studio/bin/studio.sh
Icon=/home/lisx/bin/android-studio/bin/studio.png
Terminal=false
StartupNotify=true
Type=Application
Categories=Application;Development;

将创建的文件可信任,右键查看文件属性–权限–勾选可执行
ps: 顺带说一句,编辑器啊,vi vim gedit 都没有geany好用.

Ubuntu的系统监视器不可用

可重新安装监视器

snap remove gnome-system-monitor
snap install gnome-system-monitor

也可以把整个gnome装上,比原生图形界面好用不少
sudo apt-get install gnome

adb devices 不识别设备

有时经常会遇到ubuntu突然不识别设备了,此时就需要把设备信息写入文件中,帮助系统识别

// 先插上设备,在终端输入命令:
lsusb
//然后拔出设备,再次在终端输入命令:
lsusb

// 查看两次的结果差异,其中少的一行就是该设备的信息,只要关注0e8d:201c:
Bus 001 Device 009: ID 0e8d:201c MediaTek Inc.

//这个文件是用于adb调试的,在打开的文件中增加以下文本
// idVendor是0e8d, idProduct是201c,此处为*表示通用
sudo gedit  /etc/udev/rules.d/53-android.rules
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}="0bb4", ATTR{idProduct}="*", SYMLINK+="android_adb"

// 这个文件是用于下载的,在打开的文件中增加以下文本:
sudo gedit  /etc/udev/rules.d/53-MTKinc.rules   
SUBSYSTEM=="usb", SYSFS{idVendor}=="0e8d", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=MSG_WIFI_STATE"0e8d", ATTR{idProduct}="2000", SYMLINK+="android_adb"
KERNEL=="ttyACM*", MODE="0666"

//驱动重新加载:
sudo chmod a+rx /etc/udev/rules.d/53-android.rules
sudo chmod a+rx /etc/udev/rules.d/53-MTKinc.rules
sudo /etc/init.d/udev restart  

代码下载及编译步骤

ubuntu的环境天然适合编译源码,代码下载及编译的基本步骤如下:

// 同步代码到本地
repo init -u xxx:platform/manifest -b xxx 
repo sync 

// 编译命令
source build/envsetup.sh 
lunch  1 // 选分支
make -j12  // 此处电脑多少核就写多少,提高编译效率

// 编译的时候,可以给所有的分支建立一个本地分支
//刚克隆下来的代码是没有分支的,repo start实际是对git checkout –b命令的封装
repo start --all master  
// 等同于:
repo forall -c git checkout master

建立分支及提交

既然说了代码的下载编译,后续肯定是要提交的,顺带说一个同步本地代码到github的完整操作

// 本地建立git仓库
git init

// 从github下载代码
git clone [email protected]:xxx/xxx.git

// 本地代码关联github库:
git remote add origin https://github.com/xxx/xxx

// pull代码到本地
git pull origin master

// 添加一个名为host的分支
git checkout -b host xxxxx

// 切换到主干
git checkout master 

// 合并分支host到主干
git merge host 
git commit -m “描述”

 // 把本地源码库push到Github上,在master分支可以这么写
git push origin master
// 如果是其他自建分支,需要指定主分支master提交
git push origin HEAD:master 
// 或者 git push origin HEAD:refs/for/master

//git reset --hard HEAD 后,丢失找回
git reflog
    b7057a9 HEAD@{0}: reset: moving to b7057a9
    98abc5a HEAD@{1}: commit: more stuff added to foo
    b7057a9 HEAD@{2}: commit (initial): initial commit
//如找回第二commit,只需要做如下操作:
$ git reset --hard 98abc5a

语言冲突导致终端无法启动问题

在安装完Ubuntu后,又安装了搜狗拼音,中英文来回切换,结果导致终端都打不开了,找了半天解决办法,终于如下方案起了作用:

// 在.profile中添加
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh"

java环境配置

// 打开主目录.bashrc文件,并添加java路径
export JAVA_HOME=/usr/bin/java
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

Ubuntu 更新源

这个需要实时去查,现在使用的是18.04,以下均会以此为默认版本.

//Ubuntu 下载源的配置文件:
cat /etc/apt/sources.list

//先备份一下这个文件:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

//然后打开该文件(可以使用 Ubuntu 自带的 gedit 编辑工具,也可以直接 vi):
sudo gedit /etc/apt/sources.list

// 在文件中添加(此处仅标出了阿里云的源,有一个好用的就行了),保存并退出
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse


// 终端执行
sudo apt-get update  #访问源列表里的每个网址,并读取软件列表,然后保存在本地电脑。我们在新的软件包管理器里看到的软件列表,都是通过update命令更新的。
sudo apt-get upgrade  #这个命令,会把本地已安装的软件,与刚下载的软件列表里对应软件进行对比,如果发现已安装的软件版本太低,就会提示你更新


// ps: 各种源
#阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

##中科大源
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

##163源
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse

##清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

你可能感兴趣的:(Ubuntu使用技巧)