Linux 朝花夕拾

2023-12-21 08:40
文章标签 linux 朝花夕拾

本文主要是介绍Linux 朝花夕拾,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

.bash_profile和.bashrc

.bashrc要保存个人的一些个性化设置,如命令别名、路径等。
每次修改.bashrc后,使用source ~/.bashrc(或者 . ~/.bashrc)就可以立刻加载修改后的设置,使之生效。
一般会在.bash_profile文件中显式调用.bashrc。登陆linux启动bash时首先会去读取~/.bash_profile文件,
这样~/.bashrc也就得到执行了,你的个性化设置也就生效了。但不是所有的Linux都存在bash_profile文件。

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.

另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
 
~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。

因此alias设置的别名永久生效需要将该命令加入到.bashrc

 

后台运行程序


nohup python cuckoo.py > /dev/null  2>&1 &
nohup==>Run COMMAND, ignoring hangup signals.即当前终端断开连接进程仍运行
> /dev/null 标准输出到垃圾箱,否则标准输出到nohup.out,
2>&1 错误输出到标准输出
& 程序后台运行,如果没有nohup,则当前终端如果关闭,则后台进程退出
对应其他命令:
jobs   查看后台进程,-l 参数显示进程号

root@polyhawk-sip:/polyhawk_building/analysis/sandbox# jobs -l
[1]+ 22471 Running                 nohup python cuckoo.py > /dev/null 2>&1 &

fg 1   将后台中的命令调至前台继续运行

ctrl+z   暂停当前程序

root@polyhawk-sip:/polyhawk_building/analysis/sandbox# jobs -l
[1]+ 22471 Stopped                 nohup python cuckoo.py > /dev/null 2>&1

bg 1    将一个在后台暂停的命令,变成继续执行

 

shell获取进程ID的方法

  1. ps -A |grep "cmdname"| awk '{print $1}'
  2. pidof "cmdname"
  3. pgrep "cmdname"

其中推荐pgrep,可以带-d参数作为进程号分隔符,与top使用表示很强大

top -p $(pgrep -d , "python") -c

 

最牛B的Shell命令

!!  上一条命令

^foo^bar^  替换上一条命令中的一个短语,等价于 !!:s/foo/bar/

cp filename{,.bak}   快速备份一个文件

 

<ALT + .> or <ESC + .>   复制最后使用的命令中的参数 这个快捷键只能工作于 shell 的 emacs 编辑模式,它可以从最后使用的命令行中复制参数到当前命令行中

假如你想指定第1个或第2个,或者是第 n 个参数的话,可以按 ALT + 1 (或 ESC + 1) 或 ALT + 2 (或 ESC +2) 这样形式的快捷键

 

 

 

Linux中rz和sz命令

安装:apt-get install lrzsz

命令:(Linux命令,从linux角度看)

sz filename:从服务端发送文件到客户端(Linux—>Windows):

rz:从客户端上传文件到服务端(Windows—>Linux):

在弹出的框中选择文件,上传文件的用户和组是当前登录的用户

 

SecureCRT设置默认路径:

Options -> Session Options -> Terminal -> Xmodem/Zmodem ->Directories

Xshell设置默认路径:

右键会话 -> 属性 -> ZMODEM -> 接收文件夹

 

scp命令
scp root@192.168.25.55:/root/123.txt  /root/123.txt

scp /root/123.txt  root@192.168.25.55:/root/123.txt

-r是递归拷贝目录

 

scp避免输入密码
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa

也可ssh-keygen通过向导生成

ssh-copy-id  -i ~/.ssh/id_rsa.pub $dst_ip  
    ssh-copy-id  -i ~/.ssh/id_rsa.pub
root@192.168.25.55

ssh-keygen –R 192.168.25.60   移除key
说明:
ssh-keygen 创建公钥和密钥。
    -t type     Specify type of key to create.   -P phrase   Provide old passphrase.    -f filename Filename of the key file.
ssh-copy-id 把本地主机的公钥复制到远程主机的authorized_keys文件上(追加模式)。
ssh-copy-id 也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限

注:设置key后scp命令可以tab补全远程目录或文件,很方便

 

Linux下快速删除大量文件/文件夹方法

1、先建立一个空目录
mkdir /data/blank

2、用rsync删除目标目录
rsync–delete-before -d /data/blank/ /var/spool/clientmqueue/

 

1、创建空文件
touch /data/blank.txt

2、用rsync清空文件
rsync-a –delete-before –progress –stats /root/blank.txt /root/nohup.out

 

tips:
当SRC和DEST文件性质不一致时将会报错
当SRC和DEST性质都为文件【f】时,意思是清空文件内容而不是删除文件
当SRC和DEST性质都为目录【d】时,意思是删除该目录下的所有文件,使其变为空目录
最重要的是,它的处理速度相当快,处理几个G的文件也就是秒级的事
最核心的内容是:rsync实际上用的就是替换原理

 

查看Ubuntu版本和内核版本
uname –a   内核版本
Linux polyhawk-50 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

cat  /etc/issue  ubuntu版本
Ubuntu 14.04.3 LTS \n \l

cat /etc/os-release   linux版本
root@master:/opt/hadoop-2.7.3# cat /etc/os-release
NAME="Ubuntu"
VERSION="15.10 (Wily Werewolf)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 15.10"
VERSION_ID="15.10"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL=http://bugs.launchpad.net/ubuntu/

 

ubuntu默认以root用户登录
1.启动root帐号:
sudo passwd root

根据提示输入root帐号密码
切换成root用户,su
2.vi /etc/lightdm/lightdm.conf
3.

[Seat:*]
autologin-guest=false 
autologin-user-timeout=0

autologin-user=root

保存

reboot

重启后会出现   读取/root/.profile时发现错误

vi /root/.profile

找到.profile文件中的mesg n

将其替换成tty -s && mesg n

重启ubuntu,问题解决

reference:http://www.linuxidc.com/Linux/2012-05/60806.htm

http://jingyan.baidu.com/article/fb48e8be3743696e632e1450.html

 

 

复制目录及子目录下的文件到某一目录下
find  /polylab/sample/ -maxdepth 10 -name "*.vir"  | xargs -t -i scp {} root@192.168.25.53:/polydata/test_samples
ls -R不能保证全路径

 

Argument list too long
find source/ -name "*.txt" | xargs -i mv {} target/

命令,如果是cp、rm 、ls操作将以上命令里中的mv改为相应的命令即可;

 

映射一个内存目录

mount -t tmpfs -o size=1024m tmpfs /mnt/ram

 

Ubuntu中root不能使用tab键来补全命令的解决方法

解决方法:

vim /root/.bashrc找到最后的六行,把注释掉的三行去掉前面的#,保存生效,退出再登录就OK.

if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
    . /etc/bash_completion
fi

 

空格换行替换
sed –i “s/\s\+/ /g” file
sed –i “s/\s\+/\r/g” file
sed –i “s/\s\+/\n/g”file
vim下
:%s/\s\+/ /g

 

Ubuntu 16.04 SSH 无法远程登录root账户

sudo vi /etc/ssh/sshd_config

找到:PermitRootLogin prohibit-password 注释掉

添加:PermitRootLogin yes

sudo service ssh restart

 

SS免密码登录

1.生成公钥/私钥对

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

2.复制公钥到远程主机

scp ~/.ssh/id_rsa.pub username@ip:/tmp/id_rsa.pub

3.远程主机添加公钥到.ssh/authorzied_keys

cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys

4.更改authorzied_keys权限为600
chmod 600 ~/.ssh/authorized_keys

 

Ubuntu更改计算机名及远程主机别名
1.修改/etc/hostname
2.修改/etc/hosts添加映射

image
3.reboot

转载于:https://www.cnblogs.com/lunachy/p/4834403.html

这篇关于Linux 朝花夕拾的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/519311

相关文章

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

linux hostname设置全过程

《linuxhostname设置全过程》:本文主要介绍linuxhostname设置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录查询hostname设置步骤其它相关点hostid/etc/hostsEDChina编程A工具license破解注意事项总结以RHE

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.