Sponsored Content
Full Discussion: Split "-n" unknown option
Homework and Emergencies Emergency UNIX and Linux Support Split "-n" unknown option Post 302982549 by otheus on Thursday 29th of September 2016 08:00:08 PM
Old 09-29-2016
So, just upgrade to latest coreutils version.

What -n r/K/N does is print every K/Nth line. If K = 1 and N =2, you the first line, then every 2nd line after to the end of the stream. With K = 1 and N = 4, you get the first line, then every 4th line after. This is easy enough to replicate with any of the other tools. I think sed would be the best, but my sed-foo is weak, so I'll use awk.
Code:
split() { 
 if [ "$1" = "-n" -a "${2:0:1}" = "r" ]; then
   local k="${2:2:1}"
   local n="${2##*/}"
   shift; shift;
   if [ "${1#-}" != "$1" ] ; then
     echo >&2 "Warning: additional options to split need to be handled by this function"
   fi
   awk -v k=$k -v n=$n '(NR%n)==(k%n)' "$@"
 else
   command split "$@"
 fi
}

I tested the above code using a 3-way split against a large input file and compared it to GNU split v 8.21.

If they pass other options to split, you'll have to implement those or work around them.
This User Gave Thanks to otheus For This Post:
 

8 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

unknown error message "sh: No: not found"

I am getting this error message (sh: No: not found) and I have no idea what line in my unix script its coming from or what it means. Can anyone help? thanks, Cindy (2 Replies)
Discussion started by: cindytucci
2 Replies

2. Shell Programming and Scripting

read -p "prompt text" foo say "read: bad option(s)" in Bourne-Shell

Hallo, i need a Prompting read in my script: read -p "Enter your command: " command But i always get this Error: -p: is not an identifier When I run these in c-shell i get this error /usr/bin/read: read: bad option(s) How can I use a Prompt in the read command? (9 Replies)
Discussion started by: wiseguy
9 Replies

3. Shell Programming and Scripting

if returns "unknown test operator"

Greetings, using ksh on Solaris, I am trying to identify the current version of a package installed on multiple servers using if statement in a precursor to upgrading. I have searched the forums and have found many hits, reviewed 3 pages and have tried the different variations noted there. Also... (3 Replies)
Discussion started by: 22blaze
3 Replies

4. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

5. UNIX for Dummies Questions & Answers

What is the meaning of "-s" option in "if" statement?

Hi Guys, I'm sorry but I can't find answer for this, what is the meaning of -s option in "if" statement on unix scipting. Please see sample below: opath=/home/output for i in N1 N2 N3 N4 do echo $i if then grep $i $opath/N5_CRAI > $opath/N5_$i.crai chmod 777 $opath/N5_$i.crai ... (7 Replies)
Discussion started by: rymnd_12345
7 Replies

6. Red Hat

Sendmail saying "user unknown" after setting up MX

Hi Friends, I set up the sendmail in my perosnal home lab. I am using mutt to send the email in between the machines. Everything is working fine if i send email like <username>@<hostname>. Now i set up the MX record for my domain "home.com" and then i was trying to send the email to like... (2 Replies)
Discussion started by: Rohit Bhanot
2 Replies

7. Solaris

Unknown Disks "offline or reservation conflict"

Hi All, I am a RH Linux admin that recently started working at a company with a number of SUN Servers so it's been an interesting transition. Considering the last person left with very little documentation left behind so I have been picking up most issues half complete, or troubleshot. ... (7 Replies)
Discussion started by: MobileGSP
7 Replies

8. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

Hello. System : opensuse leap 42.3 I have a bash script that build a text file. I would like the last command doing : print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt where : print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies
unknown(n)						       Tcl Built-In Commands							unknown(n)

__________________________________________________________________________________________________________________________________________________

NAME
unknown - Handle attempts to use non-existent commands SYNOPSIS
unknown cmdName ?arg arg ...? _________________________________________________________________ DESCRIPTION
This command is invoked by the Tcl interpreter whenever a script tries to invoke a command that doesn't exist. The default implementation of unknown is a library procedure defined when Tcl initializes an interpreter. You can override the default unknown to change its func- tionality. Note that there is no default implementation of unknown in a safe interpreter. If the Tcl interpreter encounters a command name for which there is not a defined command, then Tcl checks for the existence of a command named unknown. If there is no such command, then the interpreter returns an error. If the unknown command exists, then it is invoked with arguments consisting of the fully-substituted name and arguments for the original non-existent command. The unknown command typically does things like searching through library directories for a command procedure with the name cmdName, or expanding abbreviated command names to full-length, or automatically executing unknown commands as sub-processes. In some cases (such as expanding abbreviations) unknown will change the original command slightly and then (re-)execute it. The result of the unknown command is used as the result for the original non-existent command. The default implementation of unknown behaves as follows. It first calls the auto_load library procedure to load the command. If this succeeds, then it executes the original command with its original arguments. If the auto-load fails then unknown calls auto_execok to see if there is an executable file by the name cmd. If so, it invokes the Tcl exec command with cmd and all the args as arguments. If cmd can't be auto-executed, unknown checks to see if the command was invoked at top-level and outside of any script. If so, then unknown takes two additional steps. First, it sees if cmd has one of the following three forms: !!, !event, or ^old^new?^?. If so, then unknown carries out history substitution in the same way that csh would for these constructs. Finally, unknown checks to see if cmd is a unique abbrevia- tion for an existing Tcl command. If so, it expands the command name and executes the command with the original arguments. If none of the above efforts has been able to execute the command, unknown generates an error return. If the global variable auto_noload is defined, then the auto-load step is skipped. If the global variable auto_noexec is defined then the auto-exec step is skipped. Under normal circum- stances the return value from unknown is the return value from the command that was eventually executed. SEE ALSO
info(n), proc(n), interp(n), library(n) KEYWORDS
error, non-existent command Tcl unknown(n)
All times are GMT -4. The time now is 05:04 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy