Sponsored Content
Top Forums UNIX for Advanced & Expert Users Which cut command is more efficient? Post 302508688 by drl on Monday 28th of March 2011 05:47:56 PM
Old 03-28-2011
Hi.

Along this line, here is something similar to an exercise I usually had students do:
Code:
#!/usr/bin/env bash

# @(#) s1	Demonstrate cat copying a system executable file.

# Utility functions: print-as-echo, print-line-with-visual-space, debug.
pe() { for i;do printf "%s" "$i";done; printf "\n"; }
pl() { pe;pe "-----" ;pe "$*"; }
db() { ( printf " db, ";for i;do printf "%s" "$i";done; printf "\n" ) >&2 ; }
db() { : ; }
C=$HOME/bin/context && [ -f $C ] && . $C cat

# Remove debris, list current situation..
pl " Current situation:"
rm -f f1
/bin/ls -lgG

# Copy executable with cat, look at type, make it executable.
pl " New file characteristics:"
cat /bin/ls > f1
file f1
chmod +x f1

# Run it.
pl " Results of executing copy of file:"
./f1 -lgG

# Compare the files with cmp.
pl " Results of comparison:"
if cmp --quiet /bin/ls f1
then
  pe " Files are the same according to cmp."
else
  pe " Files differ."
fi

exit 0

producing:
Code:
% ./s1

Environment: LC_ALL = C, LANG = C
(Versions displayed with local utility "version")
OS, ker|rel, machine: Linux, 2.6.26-2-amd64, x86_64
Distribution        : Debian GNU/Linux 5.0.7 (lenny) 
GNU bash 3.2.39
cat (GNU coreutils) 6.10

-----
 Current situation:
total 4
-rwxr--r-- 1 836 Mar 28 16:44 s1

-----
 New file characteristics:
f1: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped

-----
 Results of executing copy of file:
total 108
-rwxr-xr-x 1 101992 Mar 28 16:45 f1
-rwxr--r-- 1    836 Mar 28 16:44 s1

-----
 Results of comparison:
 Files are the same according to cmp.

This User Gave Thanks to drl For This Post:
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

cut command

how do you show just the used disk space. using the cut and df command?? or does anyone have any other suggestions on how to do it a better way? (3 Replies)
Discussion started by: rookie22
3 Replies

2. Shell Programming and Scripting

Cut command

Hi, I want to cut from a particular position to a particular position and retain the rest. I tried this cut -c31-51 file1.txt > file2.txt But The characters from the position 31 to 51 were only present in file2.txt. Is there a way to reverse this i.e to retain the rest except from... (1 Reply)
Discussion started by: ragavhere
1 Replies

3. Shell Programming and Scripting

Help with cut command

Gurus, I need help with the cut command : I have a file with garbage charaters at the beginning of each record; but these characters are not of the same length; First record has 3 garbage chars to be removed; rest have 2; If the length was consistent across all the records, I could have... (3 Replies)
Discussion started by: tru_tell
3 Replies

4. Shell Programming and Scripting

Cut Command error cut: Bad range

Hi Can anyone what I am doing wrong while using cut command. for f in *.log do logfilename=$f Log "Log file Name: $logfilename" logfile1=`basename $logfilename .log` flength=${#logfile1} Log "file length $flength" from_length=$(($flength - 15)) Log "from... (2 Replies)
Discussion started by: dgmm
2 Replies

5. UNIX for Dummies Questions & Answers

Cut pid from ps using cut command

hay i am trying to get JUST the PID from the ps command. my command line is: ps -ef | grep "mintty" | cut -d' ' -f2 but i get an empty line. i assume that the delimiter is not just one space character, but can't figure out what should i do in order to do that. i know i can use awk or cut... (8 Replies)
Discussion started by: ran ber
8 Replies

6. Shell Programming and Scripting

Cut command

hi, i have a file abc,"an,ab",cde,efg abc,anab,cde,efg and need to cut the second field so the output should be abc,cde,efg and i have used cut -d',' -f1-1,3- but its giving me abc,ab",cde,efg abc,cde,efg (4 Replies)
Discussion started by: ATWC
4 Replies

7. UNIX for Beginners Questions & Answers

Cut command: can't make it cut fields

I'm a complete beginner in UNIX (and not a computer science student either), just undergoing a tutoring course. Trying to replicate the instructions on my own I directed output of the ls listing command (lists all files of my home directory ) to My_dir.tsv file (see the screenshot) to make use of... (9 Replies)
Discussion started by: scrutinizerix
9 Replies

8. Shell Programming and Scripting

Combining awk command to make it more efficient

VARIABLE="jhovan 5259 5241 0 20:11 ? 00:00:00 /proc/self/exe --type=gpu-process --channel=5182.0.1597089149 --supports-dual-gpus=false --gpu-driver-bug-workarounds=2,45,57 --disable-accelerated-video-decode --gpu-vendor-id=0x80ee --gpu-device-id=0xbeef --gpu-driver-vendor... (3 Replies)
Discussion started by: SkySmart
3 Replies

9. Shell Programming and Scripting

Efficient way to combine command

im currently running the following command to grab all arguments in front of a script, directly from the process table. # cat /tmp/allmyprocs ubuntu 9933 27793 0 03:29 pts/0 00:00:00 /bin/sh ./prying.sh ubuntu 9941 9933 0 03:29 pts/0 00:00:00 sh ubuntu 9952 9941 0 03:29... (1 Reply)
Discussion started by: SkySmart
1 Replies
xcutsel(1X)															       xcutsel(1X)

NAME
xcutsel - interchange between cut buffer and selection SYNOPSIS
xcutsel [-toolkitoption...] [-selection selection] [-cutbuffer number] OPTIONS
xcutsel accepts all of the standard X Toolkit command line options as well as the following: This option specifies the name of the selec- tion to use. The default is PRIMARY. The only supported abbreviations for this option are "-select", "-sel" and "-s", as the standard toolkit option "-selectionTimeout" has a similar name. This option specifies the cut buffer to use. The default is cut buffer 0. DESCRIPTION
The xcutsel program is used to copy the current selection into a cut buffer and to make a selection that contains the current contents of the cut buffer. It acts as a bridge between applications that do not support selections and those that do. By default, xcutsel will use the selection named PRIMARY and the cut buffer CUT_BUFFER0. Either or both of these can be overridden by com- mand line arguments or by resources. An xcutsel window has the following buttons: When this button is pressed, xcutsel exits. Any selections held by xcutsel are automatically released. When this button is pressed, xcutsel copies the current selection into the cut buffer. When this button is pressed, xcutsel converts the current contents of the cut buffer into the selection. The button labels reflect the selection and cutbuffer selected by command line options or through the resource database. When the "copy 0 to PRIMARY" button is activated, the button will remain inverted as long as xcutsel remains the owner of the selection. This serves to remind you which client owns the current selection. Note that the value of the selection remains constant; if the cutbuffer is changed, you must again activate the copy button to retrieve the new value when desired. X DEFAULTS
This program accepts all of the standard X Toolkit resource names and classes as well as: This resource specifies the name of the selection to use. The default is PRIMARY. This resource specifies the number of the cut buffer to use. The default is 0. WIDGET NAMES
The following instance names may be used when user configuration of the labels in them is desired: This is the "copy SELECTION to BUFFER" button. This is the "copy BUFFER to SELECTION" button. This is the "quit" button. BUGS
There is no way to change the name of the selection or the number of the cut buffer while the program is running. SEE ALSO
X(1X), xclipboard(1X), xterm(1X), text widget documentation, individual client documentation for how to make a selection. AUTHOR
Ralph R. Swick, DEC/MIT Project Athena xcutsel(1X)
All times are GMT -4. The time now is 03:15 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy