您的位置:首页 > 运维架构 > Linux

linux使用记录

2017-06-07 16:34 148 查看


Linux命令大全

http://man.linuxde.net/


右键添加vim打开文本文件

最近刚刚喜欢上vim,而ubuntu上默认的文本文件打开方式是gedit,点击右键选择其他程序打开发现没有vim。这就需要我们手动添加了,很简单,效果如图: 


 

说一下怎么搞, 

/usr/share/applications
下新建一个
vim.desktop
文件 

命令:
sudo vim /usr/share/applications/vim.desktop
 

里面编辑内容如下:
[Desktop Entry]
Encoding=UTF-8
Type=Application
Exec=vim %f
Icon=/usr/share/vim/vim48x48.png
Name=Vim
Terminal=true
NoDisplay=true
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8

这里有一个小问题,
vim48x48.png
 你在其目录下是找不到这个图片的,这里提供一个 


 

OK,大功告成。 

这里提供一些VIM学习的基本资料: 

a.《鸟哥的Linux私房菜》基础学习篇 第10章 vim程序编辑器 

b. 简明 Vim 练级攻略:http://coolshell.cn/articles/5426.html


关于在ubuntu下使用cmake、make工具

一般在windows上我们只要有VS一切即可搞定,大部分人刚转到linux上时都不太习惯。 

首先你需要了解make+makefile,它是linux下简化编译过程的一个工具(你总不会喜欢用gcc一个个来编译、链接吧)。这里可参见《鸟哥的linux私房菜》基础学习篇(第三版) 第22章 用make进行宏编译 的相关部分。 

然后你还需要学习下cmake跨平台的项目管理工具,因为make还是太底层而且不支持跨平台,所以大家(开源代码)一般都是用cmake来定制整个编译流程。参考网址:CMake 入门实战 , cmake-tutorial 

关于make、cmake之间的关系可参见: CMake与Make, make
makefile cmake qmake都是什么,有什么区别?


记录终端信息到文本

Linux中记录终端(Terminal)输出到文本文件 

当然也可以使用数据流重定向 

数据流重定向经常和
&
功能连用,如
cp
file1 file2 &
即把任务放置于后台执行。


简单使用ssh登录服务器

ssh 账号名称@主机名或ip地址
 

参考:Linux下如何用简单SSH登录服务器


cat命令

cat命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示。 

参考:linux下cat命令详解,cat
命令


!/usr/bin/env的作用

在开头指定代码用什么可执行程序去运行它。 

参考:#!/usr/bin/env 脚本解释程序的作用,#!/usr/bin/env
python与#!/usr/bin/python的区别


ls -al
文件属性


 
chown
:更改文件所有者。
chown
[-R] 账号名称:组名 文件或目录
 
chmod
:更改文件权限 
chown
[-R] 777 文件或目录


find命令

命令格式:
find [PATH] [option] [action]
 

示例: 

在根目录下找到名字为passwd的文件,
find / -name passwd
 

参考:鸟哥linux私房菜基础学习篇(第三版)7.5.2 文件名的查找


grep命令

命令格式:
grep [option] '查找字符串' filename
 

示例: 
grep -nHr 'REGISTER_LAYER_CRETOR' ./
 
-n
显示行号,
-H
显示文件名,
-r
递归查找每个子目录


环境变量

环境变量是未定义在当前进程中,从父进程中继承来的变量。 
var=value
不同于
var
= value
,前者是赋值操作,而后者是相等操作。 
echo
用来显示变量,如
echo
$PATH
env
用来查看环境变量;
set
用来查看所有变量;
export
用于将自定义变量转换成环境变量,从而允许该变量被子进程继续使用,如
export
PATH="${PATH}:/home/bin"
; 

在给出所要执行的命令后,shell自动在PATH环境变量所包含的目录列表(各目录路径之间以冒号分隔)中查找对应的可执行文件。 

login shell会读取两个配置文件: 

a.
/etc/profile
,系统整体的设置 

b. 
~/.bash_profile
~/.bash_login
~/.profile
,属于用户个人设置。
~/.bash_profile
其实会调用
~/.bashrc
的设置内容。 

如果需要直接读取配置文件而不用注销登录,需要用
source
将主文件夹的
~/.bashrc
的设置读入目前的bash环境。 

参考:鸟哥linux私房菜基础学习篇(第三版)


sudo cd 报错command not found

通过which cd命令发现 

cd: aliased to set olddir=$cwd ; chdir !* 

这是因为cd是shell内置的,不是普通的命令,所以不能通过sudo运行(可尝试
which cd
which
ls
)。如果确实需要运行cd,可以先执行
sudo -s
,然后就可以运行cd了,不过发现变成root@hostname了,也就是说变成root登陆了。


进程

程序(program)是以物理文件的形式存在;进程(process)是一个正在运行中的程序。 

程序被触发后,执行者的权限与属性、程序的代码与所需数据等都会被加载到内存中,操作系统并给予这个内存内的单元一个标识符(PID)。 
ps
命令最常用的方式:a) 
ps
-l
 仅查看自己的bash相关进程 b) 
ps aux
查看系统所有进程。其输出信息含义如下图所示: 


 


 
top
动态查看进程的变化; 
pstree -Aup
进程树; 
free -m
查看内存使用情况,具体含义如下图所示: 


 

参考:鸟哥linux私房菜基础学习篇(第三版)第17章


服务器上使用linux

之前都是在本地的电脑用Linux,完全sudo模式。现在来公司实习,在服务器上跑,没有了sudo,各种麻烦,学习记录如下,待整理。 

Linux下非root用户安装软件的一般流程: 

a) 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码。 

b) 解压源代码,一般使用tar -zxvf xxx.tar.gz即可 

c) 切换到解压后的目录,运行 ./configure。其选项可以通过 ./configure –help来获取,非root用户下最重要的应该是定义安装目录,即应该定义 ./configure –prefix=/path/to/bin, 对于一些依赖库,可能还需要使用 ./configure –prefix=xxx –with-xx-dir=xxx这种形式。 

e) 接着是编译源代码和安装软件: make && make install。这两条命令可以分开来用,因为编译的时候可以指定参数 -j来并行编译,这样能够加快编译进度。。 

f) 更新path路径。使用
export PATH=/path/to/bin:$PATH
,这句话在shell窗口运行只在本次会话中有效,可以将其写到
.bashrc
或者
.bash_profile
里面使其对当前用户有效。 

g) 如果安装的是动态链接库,则需要更新动态链接库路径: 
export LD_LIBRARY_PATH=/path/to/library:$LD_LIBRARY_PATH
,同样是
export
命令,最好将其写在
.bashrc
这类文件下面以便登陆的时候自动调用。 

参考: 
linux下非root用户安装软件入门 
非root用户安装apache、php、mysql 
非[无]root权限 服务器 下安装python以及python模块 
linux下configure命令详细介绍


在xshell中传输文件

个人一般使用xshell连接远程服务器,之前一直用xftp在本地和服务器之间传输文件,最近发现直接使用rz,sz命令非常方便。 

具体使用方法: 
rz
 , 接收文件, xshell就会弹出文件选择对话框,文件上传到linux里的当前目录。 
sz file
 发文件到windows上。 

参见:用rz、sz命令在Xshell传输文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: