Difference between revisions of "Esercizio 3 Prova Pratica 30-05-2012"

From Sistemi Operativi
Jump to navigation Jump to search
(Created page with "==Soluzione di Pierg== <source lang ="python"> import sys, os lines = [] directory = sys.argv[1] for file in os.listdir(directory): lines.append(file) for el in lin...")
 
 
Line 1: Line 1:
 +
<source lang="text">
 +
Lo script o il programma python prende il nome di una directory come parametro e deve listare i file nella directory che hanno
 +
un file corrispondente con nome scritto al contrario (il file ailati deve essere nella lista solo se nella directory c'e' anche italia, i
 +
palindromi devono essere listati una sola volta).
 +
</source>
 
==Soluzione di Pierg==
 
==Soluzione di Pierg==
 
<source lang ="python">
 
<source lang ="python">
Line 13: Line 18:
 
         if el[::-1] == le:
 
         if el[::-1] == le:
 
             print el
 
             print el
 +
</source>
 +
==Soluzione di Dado==
 +
<source lang="bash">
 +
#! /bin/bash
 +
cd $1
 +
files=`ls`
 +
ls > /tmp/tmp.txt
 +
rev /tmp/tmp.txt > /tmp/tmp2.txt
 +
for file in $files; do
 +
grep $file /tmp/tmp2.txt
 +
done
 +
rm /tmp/tmp.txt
 +
rm /tmp/tmp2.txt
 
</source>
 
</source>

Latest revision as of 17:33, 10 May 2015

Lo script o il programma python prende il nome di una directory come parametro e deve listare i file nella directory che hanno
un file corrispondente con nome scritto al contrario (il file ailati deve essere nella lista solo se nella directory c'e' anche italia, i
palindromi devono essere listati una sola volta).

Soluzione di Pierg

import sys, os

lines = []
directory = sys.argv[1]

for file in os.listdir(directory):
    lines.append(file)
    
for el in lines:
    for le in lines:
        if el[::-1] == le:
            print el

Soluzione di Dado

#! /bin/bash
cd $1
files=`ls`
ls > /tmp/tmp.txt
rev /tmp/tmp.txt > /tmp/tmp2.txt
for file in $files; do
	grep $file /tmp/tmp2.txt
done
rm /tmp/tmp.txt
rm /tmp/tmp2.txt