Welcome to the Linux Foundation Forum!
unexpand command not working
adriabp
Posts: 1
Hi all, I don't know if I understood the command properly but I thought it was suppose to convert spaces into tabs in a file, here's how I'm using it:
[root@localhost people]# cat peoplelist1.txt
23 female Bianca Princeton
50 male George Yale
30 female Karen Harvard
35 male Andrew Berkeley
[root@localhost people]#
[root@localhost people]# unexpand peoplelist1.txt > peoplelisttab.txt
[root@localhost people]#
[root@localhost people]# cat peoplelisttab.txt
23 female Bianca Princeton
50 male George Yale
30 female Karen Harvard
35 male Andrew Berkeley
[root@localhost people]#
23 female Bianca Princeton
50 male George Yale
30 female Karen Harvard
35 male Andrew Berkeley
[root@localhost people]#
[root@localhost people]# unexpand peoplelist1.txt > peoplelisttab.txt
[root@localhost people]#
[root@localhost people]# cat peoplelisttab.txt
23 female Bianca Princeton
50 male George Yale
30 female Karen Harvard
35 male Andrew Berkeley
[root@localhost people]#
0
Comments
-
yes you are right.. im having same results
0 -
Hi,
Have you checked the output of the file using 'od' this will show you if the formatting is there and for some reason you just arent seeing it when using 'cat'0 -
Matt Palmer wrote:Hi,
Have you checked the output of the file using 'od' this will show you if the formatting is there and for some reason you just arent seeing it when using 'cat'
Matt will you please visualize how you are referring od to use.. im just getting octal values..0 -
adriabp wrote:Hi all, I don't know if I understood the command properly but I thought it was suppose to convert spaces into tabs in a file, here's how I'm using it:
[root@localhost people]# cat peoplelist1.txt 23 female Bianca Princeton 50 male George Yale 30 female Karen Harvard 35 male Andrew Berkeley [root@localhost people]# [root@localhost people]# unexpand peoplelist1.txt > peoplelisttab.txt [root@localhost people]# [root@localhost people]# cat peoplelisttab.txt 23 female Bianca Princeton 50 male George Yale 30 female Karen Harvard 35 male Andrew Berkeley [root@localhost people]#
This command, "unexpand" is a weird one. After experimenting, I found that if you do not set the number of characters (or spaces) for the tab to jump, the spaces will stick with the default value of 8. Meaning, the tab will be treated as the spacebar. This is what became interesting.
I created a test file, wrote two sentences of two words each. After the first word in the sentence, i jumped 3 spaced to the right writing, using the space bar to write the second word. I used "unexpand" in a terminal with no options. The results were printed to standard output and it looked the same. I even opened the file in gedit. No difference.I played further and used the "-a" and the "-t" options. When I set the "-t" to 1, meaning "move tab 1 character across", the space between the words increased. I opened the file using gedit and again, the spaces were bigger in the file. Moving across the spaces with the arrow keys, it felt as if I was tabbing.
Going back to what Matt said, I believe the character number means how many bytes to use to move across the space. So it you use "unexpand" with no options, then you are telling tab to use the 8 characters in a byte to convert the spaces to tabs which you. If you set the "-t" option to one, you are telling "unexpand" to treat every number of a spaces as a whole byte increasing the space between words.
Please correct me if I am wrong.
expand manpage0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 769 Linux Foundation IT Professional Programs
- 379 Cloud Engineer IT Professional Program
- 175 Advanced Cloud Engineer IT Professional Program
- 75 DevOps IT Professional Program - Discontinued
- 7 DevOps & GitOps IT Professional Program
- 102 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 7 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 16 Cloud & Containers Training
- 2 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 2 Networking Training
- 2 Open Source Best Practice Training
- 4 System Administration Training
- 1 System Engineering Training
- 2 Web & Application Development Training
- 796 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 91 Storage
- 771 Linux Distributions
- 81 Debian
- 68 Fedora
- 23 Linux Mint
- 13 Mageia
- 24 openSUSE
- 151 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 466 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 79 Network Management
- 101 System Management
- 46 Web Management
- 127 Mobile Computing
- 20 Android
- 92 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 400 Off Topic
- 124 Introductions
- 32 Study Material
- 1K Programming and Development
- 310 Kernel Development
- 705 Software Development
- 1K Software
- 409 Applications
- 182 Command Line
- 5 Compiling/Installing
- 70 Games
- 318 Installation
- Archived
- 183 Small Talk
- 2 LFD140 Class Forum
- 1.4K LFS258 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)