
——Linux使用
文章平均质量分 72
EmbededCoder
C, Python, C++, Qt, MCU, RTOS, ARM Cortex-M, Linux
展开
-
Ubuntu 18.04 20.04 安装搜狗输入法步骤
系统先换源,如换成阿里源更新源 在终端执行 sudo apt update安装fcitx输入法框架 在终端输入 sudo apt install fcitx设置fcitx开机自启动 在终端执行sudo cp /usr/share/applications/fcitx.desktop /etc/xdg/autostart/卸载系统ibus输入法框架 在终端执行 sudo apt purge ibus在系统区域和语言设置中添加勾选中文,选择fcitx ,应用到整个系统.原创 2022-04-13 12:45:17 · 1330 阅读 · 0 评论 -
ubuntu环境变量的三种设置方法
一:设置环境变量的三种方法1.1 临时设置export PATH=/home/yan/share/usr/local/arm/3.4.1/bin:$PATH1.2 当前用户的全局设置打开~/.bashrc,添加行:export PATH=/home/yan/share/usr/local/arm/3.4.1/bin:$PATH使生效:source .bashrc1.3 所有用户的全局设置$ vim /etc/profile在里面加入:export PAT转载 2020-09-11 18:58:51 · 1950 阅读 · 0 评论 -
第一次设置 ubuntu su 密码
Ubuntu刚安装后,不能在terminal中运行su命令,因为root没有默认密码,需要手动设定。以安装ubuntu时输入的用户名登陆,该用户在admin组中,有权限给root设定密码。给root用户设置密码的具体步骤:1. 打开一个terminal,然后输入下面的命令sudo passwd [root] 回车后会出现让你输入原始密码,新密码和确认密码,[sudo] password for you :---> 输入你的密码(你现在这个用户的密码),不回显Enter n...转载 2020-07-03 11:24:49 · 4694 阅读 · 0 评论 -
Ubuntu下安装软件-选择版本-卸载-查看所有版本
有时候 Ubuntu安装软件时候会提示你缺少对应版本的软件,这时候你就需要用到 sudo apt-get install softname=version 来安装对应的软件。 sudo apt-get install openssh-client=1:6.6p1-2ubuntu1 // 上面安装的是 1:6.6p1-2ubuntu1 openssh-client 列出一个软件的版本的命令是 sudo apt-cache madison soft_name ..转载 2020-06-08 08:48:18 · 2347 阅读 · 0 评论 -
shell脚本--判断用户的输入内容
1.脚本功能:提示客户属于一串数字,并判断用户是否进行了输入,输入的是否为数字#!/bin/bashread -p "enter a number " numecho "you input ${num}"if [ -z ${num} ];then echo "Error" exitelse res=`echo "${num}*1" | bc` if [ ${res} -eq 0 ];then转载 2020-05-15 14:00:16 · 1251 阅读 · 1 评论 -
shell脚本实例--找出当前目录下以.txt结尾的文件进行打包
需求:找出root目录下以.txt结尾的文件进行打包#!/bin/bashfor file in `ls `doif [[ $file =~ \.txt$ ]];then# [[ $file =~ \.txt$ ]]匹配以.txt结尾的文件tar -zcf$file-`date +%F-%H-%M`.tar.gz$file# 找出以.txt结尾的文件进行打包fi...转载 2020-05-15 13:38:24 · 5749 阅读 · 1 评论 -
Shell字符串比较相等、不相等方法小结
#shell中对变量的值添加单引号,爽引号和不添加的区别:对类型来说是无关的,即不是添加了引号就变成了字符串类型,#单引号不对相关量进行替换,如不对$符号解释成变量引用,从而用对应变量的值替代,双引号则会进行替代#!/bin/sh#测试各种字符串比较操作。#shell中对变量的值添加单引号,爽引号和不添加的区别:对类型来说是无关的,即不是添加了引号就变成了字符串类型,#单引号不对相关量进行替换,如不对$符号解释成变量引用,从而用对应变量的值替代,双引号则会进行替代#author:te.转载 2020-05-13 13:49:25 · 3418 阅读 · 1 评论 -
Linux 命令、变量笔记
whoami 返回用户名${USER} 用户名hostname 返回主机名uname\ uname -XXX 打印系统信息echo hostname - 输出 hostnameecho `hostname` -输出真正的主机名原创 2020-05-13 11:00:47 · 201 阅读 · 0 评论 -
shell 笔记
declare -declare命令用于声明 shell 变量declare [+/-][rxi][变量名称=设置值] 或 declare -f${!var}是指取变量时变量名从var中动态得到,而不是直接的字面量var。var可以是其它合法的变量名,如${!aaa}、${!bbb}示例:f1() {local var="$1"echo "${!var}"}f1 1 --结果 1,相当于echo "${1}"f1 2 b --结果 b, 相当于echo "${...转载 2020-05-12 16:40:35 · 206 阅读 · 0 评论 -
Ubuntu 18.04 Linux 修改系统时间
1、运行如下命令:sudo tzselect1.1 选择 亚洲Asia;1.2 继续选择 中国China;1.3 最后 选择北京Beijing。2、创建时区软链sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime...转载 2020-05-08 15:11:20 · 2138 阅读 · 0 评论 -
从一个终端向另一个终端输出数据
输入tty 查看每个终端当前所在的位置。比如第一个在/dev/pts/0第二个在/dev/pts/1那么可以在第一个终端(也就是/dev/pts/0)中输入echo "abc" >/dev/pts/1这样第二个终端就显示abc...转载 2020-04-16 16:08:49 · 1501 阅读 · 0 评论 -
Ubuntu 18.04安装Samba服务器及配置
局域网下使用samba服务在Linux系统与Windows系统直接共享文件是一项很方便的操作。以Ubuntu为例配置samba服务,Linux服务器的版本是Ubuntu 18.04.1 LTS。查看当前正在运行的 Ubuntu 的版本号在终端中执行下列指令:cat /etc/issue以下是我的安装配置步骤:(1)更新当前软件。sudo apt-get upgrad...转载 2020-04-16 13:18:28 · 12372 阅读 · 0 评论 -
shell
shell 中的 set -e 和 set +e的区别set -e :执行的时候如果出现了返回值为非零,整个脚本 就会立即退出set +e:执行的时候如果出现了返回值为非零将会继续执行下面的脚本shell中$(( ))、$( )、``与${ }的区别 https://www.cnblogs.com/97lzc/p/11216938.html...转载 2020-04-14 16:28:19 · 222 阅读 · 0 评论 -
在ubuntu下如何搜索文件
1.whereis 文件名特点:快速,但是是模糊查找例如:whereis php #会把php,php.ini,php.*所在的目录都找出来.2.find / -name 文件名特点:准确,但速度慢,消耗资源大例如:如果想找到php.ini的准确位置,需要用#find / -name php.ini3.locate 文件名最快,最好的方法.注意:第一次使用该命...转载 2020-04-01 13:17:15 · 289 阅读 · 0 评论 -
ubuntu设置代理 的三种方式
一、代理上网:方法一这是一种临时的手段,如果您仅仅是暂时需要通过http代理使用apt-get,您可以使用这种方式。在使用apt-get之前,在终端中输入以下命令(根据您的实际情况替换yourproxyaddress和proxyport)。终端运行exporthttp_proxy="http://用户名:密码@代理IP:代理端口"也可方法二这种方法要用到/etc/apt/文件夹...转载 2020-04-01 09:48:49 · 15600 阅读 · 0 评论 -
linux安装指定版本的cmake
方式一:直接安装1、Centos系统$ yum install cmake2、ubuntu系统$ apt-get install cmake// 这种方式不能指定版本,默认安装的一般是比较低版本的cmake //(1)查询当前cmake版本$ cmake --versioncmake version 3.5.1方式二:下载并安装,可安装指定版本网站https:...转载 2020-03-31 16:33:26 · 17534 阅读 · 3 评论 -
apt-get常见错误
apt-get使用参考:apt-cache search # ——(package 搜索包)apt-cache show #——(package 获取包的相关信息,如说明、大小、版本等)sudo apt-get install # ——(package 安装包)sudo apt-get install # —–(package - - reinstall 重新安装包)sudo ap...转载 2020-03-31 16:11:38 · 1356 阅读 · 0 评论 -
linux 查看系统信息命令
# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境...转载 2020-03-31 13:29:29 · 2807 阅读 · 0 评论 -
Ubuntu忘记密码的解决办法
ubuntu忘记root密码怎么办?如果普通用户忘记了怎么办第一种方法:无论你是否申请了root帐号,或是普通账号密码忘记了都没有问题的!1、重启ubuntu,随即长按shift进入grub菜单;2、选择第二个高级模式recovery mode进入3、进入Recovery Menu界面,选择root Droptorootshellprompt,也就是获取root权...转载 2020-03-31 13:14:20 · 24898 阅读 · 3 评论 -
pthread_mutex_init等多线程函数的使用详解
线程按照其调度者可以分为用户级线程和核心级线程两种用户级线程主要解决的是上下文切换的问题,它的调度算法和调度过程全部由用户自行选择决定,在运行时不需要特定的内核支持;我们常用基本就是用户级线程,所以就只总结一下POSIX提供的用户级线程接口;基本线程操作相关的函数:1线程的建立结束2线程的互斥和同步3使用信号量控制线程4线程的基本属性配置基本线程操作:函数 ...转载 2020-03-03 16:37:46 · 1269 阅读 · 0 评论 -
在Linux中使用线程
我并不假定你会使用Linux的线程,所以在这里就简单的介绍一下。如果你之前有过多线程方面的编程经验,完全可以忽略本文的内容,因为它非常的初级。首先说明一下,在Linux编写多线程程序需要包含头文件pthread.h。也就是说你在任何采用多线程设计的程序中都会看到类似这样的代码:#include <pthread.h>当然,进包含一个头文件是不能搞定线程的,还需要连接libpth...转载 2020-03-03 16:37:02 · 503 阅读 · 1 评论 -
Linux下编程用到的锁
线程之间的锁有:互斥锁、条件锁、自旋锁、读写锁、递归锁。一般而言,锁的功能越强大,性能就会越低。1、互斥锁互斥锁用于控制多个线程对他们之间共享资源互斥访问的一个信号量。也就是说是为了避免多个线程在某一时刻同时操作一个共享资源。例如线程池中的有多个空闲线程和一个任务队列。任何是一个线程都要使用互斥锁互斥访问任务队列,以避免多个线程同时访问任务队列以发生错乱。在某一时刻,只有一个线程可以获...转载 2020-03-03 16:18:46 · 269 阅读 · 0 评论 -
VI 使用
删除全部 :.,$d删除单个字符 x删除行 [n]dd光标下行编辑 o原创 2020-03-03 14:50:59 · 233 阅读 · 0 评论 -
linux下gdb调试方法与技巧整理
目录一、gdb简介二、gdb使用流程三、gdb基本使用命令1、运行命令2、设置断点3、查看源码4、打印表达式5、查看运行信息6、分割窗口7、cgdb强大工具四、总结一、gdb简介GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。 对于一名Linux下工作的c/c++程序员,gdb是必不可少...转载 2020-03-02 15:52:25 · 401 阅读 · 0 评论 -
Linux中/proc目录下文件详解 /proc/devices文件 /proc/modules文件
原来对linux系统中的/proc目录不是很了解,只知道可以查看cpu,内存等相关的信息,后来一个朋友问我/proc目录的一些内容,还真没有答上来,于是搜索下资料,找到一篇不错的文章,学习了!转载如下:Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统信息不是针对某个特定进程的,而是能够在整个系统范围的上下文中使用。可以使用的文件随系统配置的变化而变化。命令p...转载 2020-02-28 09:09:13 · 1556 阅读 · 0 评论 -
select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET
http://hi.baidu.com/%B1%D5%C4%BF%B3%C9%B7%F0/blog/item/e7284ef16bcec3c70a46e05e.htmlselect函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型: #include <sys/time.h> ...转载 2020-02-26 14:47:38 · 328 阅读 · 0 评论 -
Linux中对文件描述符的操作(FD_ZERO、FD_SET、FD_CLR、FD_ISSET
在Linux中,内核利用文件描述符(File Descriptor)即文件句柄,来访问文件。文件描述符是非负整数。打开现存文件或新建文件时,内核会返回一个文件描述符。读写文件也需要使用文件描述符来指定待读写的文件。宏FD_ZERO、FD_SET、FD_CLR、FD_ISSET中“FD”即为file descriptor的缩写,下面来一一进行介绍。 首先介绍一个重要的结构体:fd_s...转载 2020-02-26 14:32:59 · 796 阅读 · 0 评论 -
LINUX SHELL 多个命令一起执行的几种方法
在命令行可以一次执行多个命令,有以下几种:1.每个命令之间用;隔开说明:各命令的执行结果,不会影响其它命令的执行。换句话说,各个命令都会执行,但不保证每个命令都执行成功。cd /home/PyTest/src; python suning.py12.每个命令之间用&&隔开说明:若前面的命令执行成功,才会去执行后面的命令。这样可以保证所有的命令执行完毕后,...转载 2020-02-25 10:42:52 · 8646 阅读 · 0 评论 -
Linux fdisk命令
Linux fdisk是一个创建和维护分区表的程序,它兼容DOS类型的分区表、BSD或者SUN类型的磁盘列表。语法fdisk [必要参数] [选择参数]必要参数:-l 列出素所有分区表 -u 与"-l"搭配使用,显示分区数目选择参数:-s<分区编号> 指定分区 -v 版本信息菜单操作说明m :显示菜单和帮助信息 a :活动分区标记/引导分区 d ...转载 2020-02-24 16:42:32 · 328 阅读 · 0 评论 -
sudo cd为什么不能够执行
问题描述我想要cd到/etc/docker,但是它给我一个权限不够的错误,然后,我想到使用sudo cd /etc/docker时,它告诉我sudo: cd:找不到命令。于是,郁闷的我就去上网找了下原因。问题分析cd不是一个应用程序而是Linux内建的命令,而sudo仅仅只对应用程序起作用。sudo foo只意味着以root权限运行foo程序所以,sudo cd /etc/do...转载 2020-02-24 16:29:41 · 469 阅读 · 0 评论 -
linux下文件的复制、移动与删除
1,复制粘贴文件 cp [选项] 源文件或目录 目标文件或目录2,剪切粘贴文件 mv[选项] 源文件或目录 目标文件或目录3,删除文件 rm 文件 慎用 rm -rf linux下文件的复制、移动与删除命令为:cp,mv,rm一、文件复制命令cp命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destina...原创 2020-02-24 16:28:52 · 266 阅读 · 0 评论 -
Linux中挂载详解以及mount命令用法
挂载概念Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”。注意:“挂载点”的目录需要以下几个要求:(1)目录事先存在,可以用mkdir命令新建目录;(2)挂载点目录不可被其他进程使用到;(3)挂载点下原有文件将被隐藏。挂载与卸载挂载方法:mou...转载 2020-02-24 16:09:49 · 547 阅读 · 0 评论 -
ubuntu18.04 安装 flameshot截图工具
安装flameshot:https://github.com/lupoDharkael/flameshotsudo apt-get install flameshot然后设置一个快捷键,设置>设备>键盘,设置一个自定义快捷键(拉到最下面)命令填写:flameshot gui截完图后保存为图片Ctrl+S将截图复制到剪贴板Ctrl+C截图效果如下:...转载 2020-02-19 16:37:19 · 423 阅读 · 0 评论 -
非常全的linux面试笔试题及参考答案
一.填空题:1. 在Linux系统中,以文件方式访问设备 .2. Linux内核引导时,从文件/etc/fstab中读取要加载的文件系统.3. Linux文件系统中每个文件用i节点来标识.4. 全部磁盘块由四个部分组成,分别为引导块 、专用块 、 i节点表块 和数据存储块.5. 链接分为:硬链接 和 符号链接.6. 超级块包含了i节点表 和 空闲块表等重要的文件系统信息....转载 2019-12-04 09:44:41 · 1032 阅读 · 0 评论 -
linux硬盘分区、格式化、挂载超详细步骤(fdisk/parted))
转载 2019-11-16 21:31:40 · 1190 阅读 · 0 评论 -
Ubuntu Desktop下自动启动终端并运行脚本
1.进入桌面后按Alt + F2组合键,输入gnome-session-properties并回车2.点击添加在command栏里输入我们要添加的程序 gnome-terminal -x bash -c "/home/XXX/test.sh" 或者 gnome-terminal -x bash -c "/home/XXX/test.sh;read"然后点击保存 --&...原创 2019-11-16 13:09:20 · 3421 阅读 · 0 评论 -
ubuntu-18.04 设置开机启动脚本
ubuntu-18.04 设置开机启动脚本参阅下列链接https://askubuntu.com/questions/886620/how-can-i-execute-command-on-startup-rc-local-alternative-on-ubuntu-16-10ubuntu-18.04不能像ubuntu14一样通过编辑rc.local来设置开机启动脚本,通过下列简单设置...转载 2019-11-15 17:12:38 · 293 阅读 · 0 评论 -
Linux使用命令行挂载U盘和拷贝文件
创建文件夹usb(挂载点):命令:mkdir /mnt/usb命令行挂载U盘:步骤一:插U盘命令:cat /proc/partitions插u盘之前,上述命令cat / proc/partitions,观察现在系统的分区情况;插上u盘后,再次运行上述命令,查看多出来的分区(通常是sda1)。l步骤二:查看输出结果命令:fdisk -l /dev/sda例如:...转载 2019-11-10 22:42:10 · 2298 阅读 · 0 评论 -
ubuntu 为USB串口绑定固定的设备名
ubuntu USB设备号为从零开始依次累加,多个设备每次开机后设备号不固定.udev的规则,可以参考博客:http://blog.youkuaiyun.com/cokewei/article/details/8281239将端口重映射到固定的名字,并且设置其权限为可读。使用对应的 id 设备映射到固定的名字上。 lsusb 查看对应的 usb 端口信息 1...原创 2019-11-10 17:57:33 · 3894 阅读 · 6 评论 -
Ubuntu16.04系统查看已安装的python版本,及Python2与Python3之间切换
Ubuntu1604LTS 首先可以看到 Python2 和 Python3 都已经安装了的默认使用的是 Python3想要使用 Python3 运行程序可以用命令: Python3 xx.py 或者 Python xx.py想要使用 Python2运行程序可以用命令: Python2 xx.py如果没有安装Python3,就需要进行安装。 1.首...原创 2019-11-10 16:01:02 · 794 阅读 · 0 评论