Class: RBT::RemoveOutdatedArchives
- Inherits:
-
Base
- Object
- Base
- RBT::RemoveOutdatedArchives
show all
- Defined in:
- lib/rbt/utility_scripts/remove_outdated_archives.rb
Overview
RBT::RemoveOutdatedArchives
Constant Summary
collapse
- NAMESPACE =
inspect
Constants inherited
from Base
Base::ALL_COLOUR_METHODS, Base::ARRAY_KDE_KONSOLE_COLOURS_IN_USE, Base::KONSOLE
Class Method Summary
collapse
-
.[](i = '') ⇒ Object
# === RBT::RemoveOutdatedArchives[] ========================================================================= #.
Instance Method Summary
collapse
Methods inherited from Base
#abbreviations?, #add_to_the_commandline_arguments, #all_binaries?, #all_libraries?, #always_show_dependencies?, #appdir_location_of?, #append_what_into, #archive_type_of?, #available_programs?, #be_quiet?, #be_verbose?, #begins_with_a_comment?, #capitalize_first_alphabetical_character, #capitalize_program_names?, #cat, #cd_to_the_log_directory, #cd_to_the_temp_directory, #change_directory, #change_permission, #cheering_person?, #chmod, #chop_off_archive, #cliner, #colourize_directory_for_system_results, #colourize_this_error, #colourize_this_file_path, #colourize_this_warning, #commandline_arguments?, #commandline_arguments_without_hyphens?, #config?, #convert_env_variable, #cookbook_files?, #cookbooks_include_this_program?, #copy_directory, #copy_files, #copy_recursively, #cpr, #create_directory, #current_hour?, #dd_mmm_yyy, #debug, #debug?, #determine_appdir_prefix_from_this_input, #determine_archive_type, #directory_expanded_cookbooks?, #directory_validation?, #disable_colours, #display_md5sum?, #do_not_debug, #do_not_show_names, #does_the_cookbook_include_this_program?, #does_this_expanded_cookbook_file_exist_for_this_program?, #does_this_file_exist?, #does_this_file_exist_and_is_it_a_file?, #e, #eblue, #ecomment, #ecrimson, #edir, #editor?, #efancy, #eimp, #email?, #enable_colours, #enable_debug, #ensure_main_encoding_for, #eparse, #esystem, #esystem_gold, #etomato, #ewarn, #exit_on_unregistered_cookbook_entries?, #exit_program, #expanded_cookbooks_directory_exists?, #fast_return_file_size_of_this_program, #file_compiled_programs?, #file_last_symlinked_program?, #file_predefined_installation_instructions?, #file_programs_version_url, #file_specification_of_registered_cookbook_entries, #find_cookbook_alias_for, #find_this_yaml_file, #first_argument?, #gem_version, #get_all_directories_from, #get_all_files_from, #get_all_programs, #get_date, #get_files_and_directories_from, #go_to_base_dir, #home_dir?, #host_system?, #is_a_64bit_system?, #is_an_archive?, #is_ccache_available?, #is_file?, #is_on_gobolinux?, #is_on_windows?, #is_porg_available?, #is_roebe?, #is_this_a_header?, #is_this_a_library?, #is_this_program_included?, #load_dataset_from_this_expanded_cookbook, #load_yaml, #load_yaml_file_from_the_cookbook_directory_for_this_program, #log_directory?, #main_encoding?, #make_command?, make_command?, #make_install_command?, #move_file, #n_programs_available?, #new_cookbook_instance_for, #no_directory_exists_at, #no_opn, #no_such_file_exists, #open_in_browser, #open_in_editor, #opne, #opnef, #opnerror, #opnewarn, #opnn, #path_to_this_expanded_cookbooks_dataset, #play_song?, #predefined_installation_instructions?, #program_dir?, #program_exists?, #programs_dir?, #project_base_dir?, #project_yaml_directory?, #publish_list_of_all_programs_version, #rarrow?, #rbt_logs?, #read_file, #read_file_in_default_encoding, #readlines, #readlines_with_proper_encoding, #recipes_dir?, #register_sigint, registered_binaries?, #remove, #remove_archive_from_the_end, #remove_comments_from_each_line, #remove_directory, #remove_double_slashes, #remove_file, #remove_file_extension, #remove_newlines, #remove_parens, #remove_symlink, #remove_this_commandline_argument, #remove_trailing_ANSII_escape_code, #remove_unnecessary_data_from_url, #rename, #rename_kde_konsole_tab, #repackage, #report_n_programs, #report_pwd, #report_to_developers, #report_working_directory, #return_all_archives_from_this_directory, #return_commandline_arguments_with_leading_hyphens, #return_current_hour_minutes_second, #return_date, #return_day_of_the_month_based_on_utc, #return_full_time, #return_hours_minutes_seconds_based_on_utc, #return_location_to_this_programs_yaml_file, #return_month_based_on_this_number, #return_month_based_on_utc, #return_n_random_characters, #return_opnn, #return_program_information, #return_program_name, #return_program_name_for_gobolinux_systems, #return_pwd, #return_unicode_warning_symbol_or_empty_string, #return_utc, #return_utc_time_in_a_format_similar_to_slackware, #return_version_of_this_program, #return_weekday_based_on_utc, #return_year_based_on_utc, #rev, #run_ldconfig?, #run_make_then_make_install, #run_simulation=, #run_simulation?, #sanitize_url1_entry, #sdir, #sdir_return_pwd, #set_be_silent, #set_be_verbose, #set_commandline_arguments, #set_source_directory, #set_use_opn, #set_xorg_buffer, #sfancy, #sfile, #show_overview_over_available_utility_scripts, #silently_create_this_directory_if_it_does_not_yet_exist, #simp, #source_base_directory?, #ssym, #stderr, #store_into_this_directory?, #swarn, #symlink, #symlink_all_files_from_this_directory_to_that_directory, #sysbin_directory?, #sysetc_directory?, #sysinclude_directory?, #syslib_directory?, #sysshare_directory?, #system_directory?, #system_tags?, #temp_directory?, #to_bool, #to_camelcase, #to_unicode, #today?, #touch, #unicode_cliner, #unicode_middle_cliner, #upload_list_of_all_programs_version, #use_ccache?, #use_colours=, #use_colours?, #use_mrxvt?, #use_opn=, #use_opn?, #use_porg?, #use_stow?, #use_tags?, #use_yaml_database_for_tags?, #verbose_truth, #warn_and_exit, #wget, #word_wrap, #write_what_into, #write_what_into_via_unicode, #yes_or_no
Constructor Details
#initialize(commandline_arguments = nil, run_already = true) ⇒ RemoveOutdatedArchives
45
46
47
48
49
50
51
52
53
54
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 45
def initialize(
commandline_arguments = nil,
run_already = true
)
reset
set_commandline_arguments(
commandline_arguments
)
run if run_already
end
|
Class Method Details
.[](i = '') ⇒ Object
#
RBT::RemoveOutdatedArchives[]
#
216
217
218
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 216
def self.[](i = '')
new(i)
end
|
Instance Method Details
#add(i) ⇒ Object
#
add (add tag)
This method will simply append (aka add) to the main Array of this class.
#
145
146
147
148
149
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 145
def add(i)
@array_work_on_these_programs << i
@array_work_on_these_programs.flatten!
@array_work_on_these_programs.compact!
end
|
89
90
91
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 89
def format_type?
@look_only_for_these_archive_types
end
|
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 96
def (
i = @commandline_arguments
)
if i.is_a? Array
i.each {|entry| (entry) }
else
if i.start_with? ':'
if i.is_a?(String) and i.include?(':')
i = i.dup if i.frozen?
i.delete!(':')
end
case i when /^xorg(_|-)?apps$/i,
:xorg_apps
add RBT.return_xorg_apps
when /^kde(_|-)?applications$/i,
:kde_applications
add RBT.return_kde5_applications
when /^kde(_|-)?plasma$/i,
:kde_plasma
add RBT.return_kde5_plasma
when /^kde(_|-)?foundation$/i,
:kde_foundation,
:kde5_foundation
add RBT.return_kde5_foundation
end
end
end
end
|
#notify_the_user_as_to_how_many_files_were_removed ⇒ Object
#
notify_the_user_as_to_how_many_files_were_removed
#
154
155
156
157
158
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 154
def notify_the_user_as_to_how_many_files_were_removed
if @n_files_were_removed > 0
opnn; e 'A total of '+sfancy(@n_files_were_removed.to_s)+' files were removed.'
end
end
|
#purge_these_entries(i) ⇒ Object
#
purge_these_entries (purge tag)
#
192
193
194
195
196
197
198
199
200
201
202
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 192
def purge_these_entries(i)
if i.is_a? Array
i.flatten.each {|entry| purge_these_entries(entry) }
else
if File.file?(i) and i.end_with?(format_type?)
e "The entry #{sfile(i)} will be removed next."
@n_files_were_removed += 1
remove_file(i)
end
end
end
|
#reset ⇒ Object
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 59
def reset
super()
@namespace = NAMESPACE
@look_only_for_these_archive_types = '.tar.xz'
@array_work_on_these_programs = []
@n_files_were_removed = 0
end
|
#run ⇒ Object
207
208
209
210
211
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 207
def run
work_through_the_programs
notify_the_user_as_to_how_many_files_were_removed
end
|
#work_through_the_programs(i = @array_work_on_these_programs) ⇒ Object
#
work_through_the_programs
#
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
|
# File 'lib/rbt/utility_scripts/remove_outdated_archives.rb', line 163
def work_through_the_programs(
i = @array_work_on_these_programs
)
i.each {|this_program|
this_directory = "#{src_dir?}#{this_program}/"
opnn; e "Working on the directory #{sdir(this_directory)} next:"
files_in_that_directory = Dir[
this_directory+'*'+@look_only_for_these_archive_types
].sort
highest_entry = files_in_that_directory.max
array_of_entries_that_are_to_be_purged = files_in_that_directory.reject {|entry|
entry.include? highest_entry
}
purge_these_entries(array_of_entries_that_are_to_be_purged)
}
end
|