Sponsored Content
Full Discussion: Split and Rename Split Files
Top Forums UNIX for Beginners Questions & Answers Split and Rename Split Files Post 303014969 by Don Cragun on Saturday 24th of March 2018 04:49:20 PM
Old 03-24-2018
In addition to what RudiC said about passing variables to awk. note also that the 2nd line in your script is unusual. One would usually expect either:
Code:
#!/usr/bin/ksh
awk 'NR%3==1{x=sprintf("%03d_%s",++i,FILENAME)}{print > x}' "$1"

or:
Code:
#!/usr/bin/ksh
File1=$1
awk 'NR%3==1{x=sprintf("%03d_%s",++i,FILENAME)}{print > x}' "$File1"

If one wanted to use this awk script to process multiple files, one might try the following instead (assuming that the 1st parameter to your script is the number of lines to put in each file and the remaining parameters are the names of the files you want to process:
Code:
#!/usr/bin/ksh
ChunkSize=$1
shift 1
awk -v s="$ChunkSize" 'FNR==1{i=0}FNR%s==1{close(x);x=sprintf("%03d_%s",++i,FILENAME)}{print > x}' "$@"

This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Split a file with no pattern -- Split, Csplit, Awk

I have gone through all the threads in the forum and tested out different things. I am trying to split a 3GB file into multiple files. Some files are even larger than this. For example: split -l 3000000 filename.txt This is very slow and it splits the file with 3 million records in each... (10 Replies)
Discussion started by: madhunk
10 Replies

2. Shell Programming and Scripting

split and rename the file

Hi All, I have a requirement .I want to split a file and the split files should have certain names. Currently when i use the split command split -1000 testdata testdata_ Then the output is testdata_aa testdata_bb testdata_cc and so on. But i want the output as testdata1.snd... (3 Replies)
Discussion started by: dnat
3 Replies

3. Shell Programming and Scripting

awk split and rename files

I have a file test1.html like below: <dctm_topnav_en_US> <html> ..... </html> <dctm_topnav_en_CA> <html> ..... </html> <dctm_topnav_en_FR> <html> ..... </html> I need to use awk to split this into three file names like en_US.html , en_CA.html, en_FR.html each having content between... (4 Replies)
Discussion started by: vijay52
4 Replies

4. UNIX for Dummies Questions & Answers

Split then rename

Hi everyone, I am trying to write an if statement that will split a file if it is over 1 million records/lines into files with say 900,000 records and then rename those files without the aaa, aab, aac format that splitting normally does and into a specific naming convention. For instance, if... (2 Replies)
Discussion started by: coach5779
2 Replies

5. UNIX for Dummies Questions & Answers

Split and Rename files using Terminal and bin/bash

I have a file named Me_thread_spell.txt that I want to split into smaller files. I want it to be split in each place there is a ;;;. For example, blah blah blah ;;; blah bhlah hlabl awasnceuir asenduhfoijhacseiodnbfxasd;;; oabwcuhaweoir;;; This full file would be three separate files... (7 Replies)
Discussion started by: mschpers
7 Replies

6. Shell Programming and Scripting

awk to split one field and print the last two fields within the split part.

Hello; I have a file consists of 4 columns separated by tab. The problem is the third fields. Some of the them are very long but can be split by the vertical bar "|". Also some of them do not contain the string "UniProt", but I could ignore it at this moment, and sort the file afterwards. Here is... (5 Replies)
Discussion started by: yifangt
5 Replies

7. UNIX for Dummies Questions & Answers

Split and Rename multiple files

Hi, I have a data file like below messageid|email|timestamp 750452173|123@googlemail.com|2013-05-24 16:14:32 750464921|000@gmail.com|2013-06-13 19:38:01 750385426|001@googlemail.com|2013-01-06 12:06:36 750373470|000@wz.eu|2012-11-30 22:32:07 . . I want to split the files based on the... (4 Replies)
Discussion started by: armsaran
4 Replies

8. Shell Programming and Scripting

Split and rename files

Hello, Need to split files into n number of files and rename the files Example: Input: transaction.txt.1aa transaction.txt.1ab ...... Output: transaction.txt.1 transaction.txt.2 transaction.txt.3 (3 Replies)
Discussion started by: krux_rap
3 Replies

9. Shell Programming and Scripting

awk : split file and rename and save in path according to content

Hello, I'm using Windows 7 ; sed, awk and gnuwin32 are installed. I have a big text file I need to manipulate. In short, I will have to split it in thousands of short files, then rename and save in a folder which name is based upon filename. Here is a snippet of my big input.txt file (this... (4 Replies)
Discussion started by: sellig
4 Replies

10. UNIX for Beginners Questions & Answers

Automate splitting of files , scp files as each split completes and combine files on target server

i use the split command to split a one terabyte backup file into 10 chunks of 100 GB each. The files are split one after the other. While the files is being split, I will like to scp the files one after the other as soon as the previous one completes, from server A to Server B. Then on server B ,... (2 Replies)
Discussion started by: malaika
2 Replies
PCLOCK(1)						      General Commands Manual							 PCLOCK(1)

NAME
pclock - pixmap clock SYNOPSIS
pclock [options] DESCRIPTION
This manual page documents briefly the pclock command. This manual page was written for the Debian GNU/Linux distribution because the original program does not have a manual page. pclock is a program that places a small analog clock program on the desktop of X. It was designed to run under the WindowMaker window man- ager. It uses any 64x64 pixmap as a background. OPTIONS
The programs follow the usual GNU command line syntax, with long options starting with two dashes (`-') and short optoins starting with one dash. A summary of options is included below. -B PIXMAP, --background=PIXMAP Use the given pixmap as the clock background (size must be 64x64). -H COLOR, --hands-color=COLOR Draw the hands (hour, minute and second) in the specified color. -S COLOR, --second-hand-color Draw the second hand in the specified color -h, --help Show summary of options. --hour-hand-length=INT Draw the hour hand with the specified length of INT. --minute-hand-length=INT Draw the minute hand with the specified length of INT. --second-hand-length=INT Draw the second hand with the specified length of INT. --second-hand-width=INT Draw the minute hand with the specified width of INT. -s, --second-hand Don't display the second hand. -v, --version Show version of program. -w, --withdrawn Don't start up in a withdrawn (iconic) state. AUTHOR
This manual page was written by Darren Benham <gecko@debian.org>, for the Debian GNU/Linux system (but may be used by others). The soft- ware is copyrighted (c) 1998 by and released under the GPL v2. Author: Alexander Kourakos <Alexander@Kourakos.com> Web: http://www.kourakos.com/~awk/pclock/ PCLOCK(1)
All times are GMT -4. The time now is 02:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy