c语言打开当前目录下的文件_Linux下自定义文件默认打开方式
这个需求,我很早就已经有了。比如,我之前手动安装了Typora,但一直没有设置好默认打开方式。在Deepin系统下右击.txt或.md文件,在「打开方式」及其下级选项「选择默认程序」下都无法直接看到Typora的快捷方式,使用「添加其他程序」按钮,找到相应执行文件后,也只能打开软件而无法直接打开文件。那我何必这么找呢,不如直接从「开始」菜单那里先打开Typora了。
所以,我就开始找解决办法。真找到了。现在就分享给大家,以供参考。这里的例子,也就是设置Typora默认打开纯文本文件如.txt、.md。
首先,我从https://www.cnblogs.com/Felix-F/p/3267800.html,得知了修改文件关联所直接需要的特定文件,大致的路径等信息如下:
全局文件关联:/usr/share/applications/default.list个人文件关联:~/.local/share/applications/mimeapps.list
在这里,我们仅需修改「个人文件关联」即可。据说,二者不一致时,会首先采用个人文件关联。
我的最低需求是,能用Typora打开纯文本文件,其后缀名为txt或md。据此,打开mimeapps.list(无论您是用文件管理器及带GUI的程序还是用命令行等等,都行),并在其中[Default Applications]
(「默认程序」)下添加一行代码如下:
text/plain=Typora.desktop
根据https://blog.csdn.net/dadoneo/article/details/6076359处所言,该行代码的格式则为:
程序类型/文件类型=打开这个文件的项[;项2]...[;项n]
后面的选项可以不止一个,各项间仅需隔以半身的;
。
根据例如我本人的需求,如需打开纯文本文件,则应选的类型为plain
,应选的打开方式为比如Typora.desktop
。
如果其他条件具备,则这样设置就可以实现需要了。
不过,由于我的Typora.desktop文件好像也是自己手动填写的,有些参数存在问题,没法直接实现。故还需修改相关.desktop文件。如果您也没有相应软件的.desktop文件,请您先行处理好这个问题。
现在,要进入/usr/share/applications
路径下,找到相应.desktop文件,比如我的就是Typora.desktop
。用合适的软件打开此文件之后,尤其要注意如下选项:Categories
、Exec
、MimeType
等。
首先,在选项Categories
中添加了参数TextEditor
,意思是「文本编辑器」云云。这个参数可能会有影响,但我也不确定,最好加上吧。
其次,我看到有人在Exec
后面加上了参数%F
,据说关联于如何打开文件,所以我也加上了。现在成了例如Exec=/opt/Typora-linux-x64/Typora %F
。
最后,需要添加选项MimeType
。我从Deepin自带的文本编辑器那里复制了其参数。直接复制过来的,因为二者的基本性质差不多。代码如下:
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-patch;text/x-adasrc;text/x-chdr;text/x-csrc;text/css;application/x-desktop;text/x-patch;text/x-fortran;text/html;text/x-java;text/x-tex;text/x-makefile;text/x-objcsrc;text/x-pascal;application/x-perl;application/x-perl;application/x-php;text/vnd.wap.wml;text/x-python;application/x-ruby;text/sgml;application/xml;model/vrml;image/svg+xml;application/json;
虽然有很多细节及其作用还不清楚,但这样修改之后,确实实现了需要。见下图。而且直接双击打开相应文件时,也能直接用Typora打开。暂无异常。
c语言打开当前目录下的文件_Linux下自定义文件默认打开方式相关推荐
- R语言使用fs包的path_wd函数基于自定义文件路径规则,批量生成多个文件或者文件夹对应的绝对(absolute)文件路径(constructs absolute path)
R语言使用fs包的path_wd函数基于自定义文件路径规则,批量生成多个文件或者文件夹对应的绝对(absolute)文件路径(constructs an absolute path from the ...
- linux打包运行python文件_Linux下安装pyinstaller用于将py文件打包生成一个可执行文件...
安装使用流程 1. 首先给系统装个easy_install, 如果装了的可以跳过这步 到pypi官方网址 https://pypi.python.org/pypi/setuptools 去downlo ...
- linux open 头文件_linux下通过共享内存和mmap实现进程间通讯
前言 最近在学习GNU/Linux内核,看到mmap的时候书上说: mmap/munmap接口函数是用户最常用的两个系统调用接口,无论是在用户程序中分配内存.读写大文件.链接动态库文件,还是多进程间共 ...
- linux 删除含有关键词的文件_linux下查找包含关键字的文件
在linux下如果要查找包含某个关键字的文件,如要在nagios目录下搜索带有关键字"store-rd-sys"的文件,在终端下运行命令: /usr/local/nagios/et ...
- ftp linux 推送文件_Linux下SSH用FTP命令上传文件至另一个FTP空间
如果没有ftp 提示: -bash: ftp: command not found 请先安装ftp应用程序: yum install ftp #ftp 127.0.0.1 21 输入远程空间的FTP ...
- linux 解压所有以zip结尾的文件_Linux下的压缩zip,解压缩unzip命令详解及实例
摘自:https://www.cnblogs.com/yves0923/p/10965021.html Linux下的压缩解压缩命令详解及实例 实例:压缩服务器上当前目录的内容为xxx.zip文件 z ...
- linux怎么创建python文件_Linux下创建python脚本并运行(入门)
1.首先定位到一个文件夹,然后使用vim编辑器:vim test.py 就创建了python脚本文件,并且进入编辑状态 2.编辑好之后按Esc切换到命令模式,然后输入:wq 回车就自动保存完成了,然后 ...
- linux禁止客户端上传文件_Linux下Shell脚本实现FTP自动上传和下载文件
概述 之前测试写的一个脚本,主要是为了实现FTP自动上传和下载文件.大家可以参考下: 基础环境配置 [root@pxzxdm01 ~]# useradd -d /home/ftp1 ftp1 [roo ...
- 项目下创建文件_Linux 下创建和使用交换文件
前言:还有5天即将元旦,一元初始,如是说:新的黎明希望闪耀.今天为大家分享Linux中交换文件的使用和概念. 一,什么是 Linux 的交换文件? 交换文件允许 Linux 将磁盘空间模拟为内存,当你 ...
最新文章
- QIIME 2用户文档. 18序列双端合并read-joining(2019.7)
- 免费版最好用功能强大方便快捷的计算器Calculator#出炉~
- Python安装错误 building 'statsmodels. extensionerror: Microsoft Visual C++ 14.0 is
- Java根据学号提取班级_学生成绩管理系统 1. 能够实现根据以下关键字查询:学生姓名 、学号、班级、课 联合开发网 - pudn.com...
- 蓝桥杯评分标准_蓝桥杯比赛要求
- java将字符串转小写转大写字母_输入一个字符串,将字符串中的所有大写字母转换为小写字母,所有小写字母转换为大写字...
- 如何去掉暴风影音广告,去掉暴风影音暂停时的广告
- 解决FireFox(火狐浏览器)占用资…
- 推荐 7 个 Python 入门视频教程
- 如何压缩照片大小,压缩照片大小的方法
- Islands 架构原理和实践
- 生活中的定律——墨菲定律
- 编程自学网站(赶紧收藏)
- Hive数据仓库实战
- c语言延时时间计算器,RC延时电路延时时间计算
- stm32(声音传感器控制LED)
- 互联网的女性主义特征
- 2021-2027全球与中国太阳能EVA板市场现状及未来发展趋势
- c语言程序立体几何计算机,立体几何教学中巧妙利用信息技术 -----培养高中学生数学学习的兴趣 张芬 2014年11月10日...
- 极端行情下,如何通过期权做好风险管理? | TI对话首席
热门文章
- 比特币ABC推出最新版本后讨论网络不兼容性
- Core开发组的傲娇造就了今天的以太坊和比特币现金(BCH)
- laravel 模型查找数据
- 卸载linux系统自带JDK,安装自己的jdk
- 呼和浩特市智慧平安城市建设迈进技防新时代
- Android自定义spinner下拉框实现的实现
- intellij (org.jdom.input.JDOMParseException) Error on line 1: 前言中不允许有内容。
- cidaemon.exe进程cpu占用率高及关闭cidaemon.exe进程方法
- 修改docker默认网桥
- 网络扫描信息收集基于(Windows)