在Linux下使用命令行打印文件
近期需要将数学笔记打印出来复习,才发现Linux KDE环境下的默认PDF软件Okular根本无法将我在GoodNotes B5大小的页面写下的内容自适应地放大到A4纸上,只能以页面的原始尺寸打印。然后,用Firefox浏览器打开PDF文件,结果只能使用人为指定的缩放比例打印,而没有自适应纸张的功能。于是,便想到用纯命令行试试看。搜索了一下,发现这里总结出的常用打印命令比较全面,且经过测试后,完全能够满足我的需求。例如,缩放页面以自适应纸张且只打印奇数页的命令如下:
lpr -o page-set=odd -o portrait -o fit-to-page -o media=A4 file-name
常用的打印相关命令也一并列在下面供今后参考:
列出当前系统已安装的所有打印机
lpstat -p
列出当前系统的默认打印机
lpstat -d
显示打印队列
lpstat
删除打印任务
lprm job-id
使用默认打印机打印文件
lpr file-name
使用指定打印机打印文件
lpr -P printer-name file-name
显示默认打印机选项
lpoptions -l
显示指定打印机选项
lpoptions -p printer-name -l
指定纸张大小、方向
lpr -o landscape -o fit-to-page -o media=A4 file-name
使页面自动缩放至纸张大小
lpr -o fit-to-page file-name
指定打印份数
lpr -#number-of-copies file-name
只打印奇数页
lpr -o page-set=odd file-name
只打印偶数页
lpr -o page-set=even file-name
设置页码范围
lpr -o page-ranges=1-4,5,6-12 file-name
设置标语页
lpr -o job-sheets=start,end file-name
其中,start与end可以替换为classified、confidential、secret、standard、topsecret与unclassified。
附记:由此也可以看出,虽然Linux下的命令行工具提供了完善和强大的功能,但是图形界面软件不注重细节、用户体验差的毛病一直都存在。像这里提到的软件基本功能缺失的问题还算是好的。更有甚者,一些被Linux稳定版收录的软件还会出现一启动就漰溃的情况。这些现象对于直接参与相关开源项目的程序员来说也许不是什么大问题,但是对于软件的最终用户或者也包括不直接从事该软件开发的程序员来说,则是难以接受的。
在Linux下使用命令行打印文件的更多相关文章
- linux下通过命令行把文件拷贝到U盘上
常用linux,往U盘拷贝文件是常用的一种方法.下面这个方法是笔者亲测有效,暂时记录下来. 1.插入U盘,fdisk -l查看U盘是哪个设备(比如/dev/sdb1)然后mount /dev/sdb ...
- Ubuntu使用命令行打印文件
Ubuntu使用命令行打印文件 正文 环境: Ubuntu 16.04.3 LTS HP Deskjet InkAdvantage 4648 准备步骤 安装Common UNIX Printing S ...
- Linux下的命令,删除文件夹下的所有文件,而不删除文件夹本身
Linux下的命令,删除文件夹下的所有文件,而不删除文件夹本身 rm -rf *
- 在linux下用命令行编译 java的eclipse项目
由于jdk的版本问题导致在windows上编译打包好的jar包放在linux服务器上运行的时候出现一点小异常,所以决定在linux上进行一次项目编译,这有两个选择1.在相同的linux环境下安装lin ...
- 在GNU/Linux下使用命令行自动挂载与卸载USB磁盘
在命令行环境下如果每次都是靠手动敲入mount与umount命令来挂载与卸载USB磁盘是件很麻烦的事情.尤其是mount命令的参数非常多.比如,磁盘的分区类型(vfat.ntfs等),挂载的目录节点, ...
- Linux下基于命令行的抓包方法
大家可能都已经对著名的抓包工具Ethereal比较熟悉了,这里再介绍一种基于命令行的抓包工具tcpdump. 举例:抓本机1813端口上的数据,并将抓包结果保存在test.cap文件中 然后在本地可以 ...
- Linux下dos2unix命令将windows文件编码格式dos转换成Unix格式
问题描述: 在Windows系统下面使用文本编辑器notepad后传到Linux系统下的话 Linux下处理和执行一般都存在一些问题,我们可以通过命令查看文件是否是dos格式的, 如果有如图所示的M标 ...
- Linux下使用命令行配置IPMI
ipmitool是什么: 百度百科给的解释已经够用了,简单说就是“IPMI(Intelligent Platform Management Interface)即智能平台管理接口是使硬件管理具备“智能 ...
- linux下通过命令行上传文件到百度网盘
一.环境: centos release 6.9 python 2.7.13 二.安装工具bypy sudo pip install bypy 三.使用bypy 3.1 授权 [root@ineedl ...
随机推荐
- Akka系列(七):Actor持久化之Akka persistence
前言.......... 我们在使用Akka时,会经常遇到一些存储Actor内部状态的场景,在系统正常运行的情况下,我们不需要担心什么,但是当系统出错,比如Actor错误需要重启,或者内存溢出,亦或者 ...
- C语言课程程序设计
项目名称和目标 项目为基于EasyX库的RPG游戏,目标能实现控制游戏主角自由移动,能与NPC对话交互. 我组目前还未确定具体项目名称 项目主体功能 项目的主体功能具有一个游戏所拥有的完整功能,包括但 ...
- 修建泳池&最大子矩阵
[题目描述] 夏天到了,学校打算在教学楼后面的空地上挖一个泳池供大家使用. 经过实地勘察,这块土地可以划分成N 行M 列的方格,有的方格是树,有的方格是空地.现在要找一块最大的矩形空地修建泳池,请问泳 ...
- nginx配置本地域名反向代理实现本地多域名80访问
什么是反向代理? 代理:通过客户机的配置,实现让一台服务器代理客户机,客户的所有请求都交给代理服务器处理. 反向代理:用一台服务器,代理真实服务器,用户访问时,不再是访问真实服务器,而是代理服务器. ...
- 用slot和component实现表单共用
业务需求 在oa开发中,有许多流程,每个流程里都会有很多字段,比如流程标题.拉下选择,附件等等,有些是每个流程都会有的,有些是特有的,按常规的方法开发,就为为一个流程写一个表单,校验,提交.如果新来流 ...
- sql server 对数运算函数log(x)和log10(x)
--LOG(x)返回x的自然对数,x相对于基数e的对数 --LOG10(x)返回x的基数为10的对数 示例:select LOG(3),LOG(6),LOG10(1),LOG10(100),LOG10 ...
- vue、iview动态菜单(可折叠)
vue项目与iview3实现可折叠动态菜单. 菜单实现一下效果: 动态获取项目路由生成动态三级菜单导航 可折叠展开 根据路由name默认打开子目录,选中当前项 自动过滤需要隐藏的路由(例:登陆) 在手 ...
- C++循环单链表删除连续相邻重复值
比如:1(头)->2->2->3->3->1->1(头) 去除以后的结果是1->2->3,注意头尾的1也要去掉一个. #include "st ...
- python接口测试中—Requests模块的使用
Requests模块的使用 中文文档API:http://2.python-requests.org/en/master/ 1.发送get.post请求 import requests reponse ...
- python-文件操作3(读写文件的详细操作)
f=open('my-heart','r') print(f.encoding)#返回字符编码 print(f.fileno())#返回操作系统的端口编号 print(f.seekable())#是否 ...